Skip to content

IoT Time Series Aggregates Service

公告

Aggregate V4 新版 API 已经可用。 关于新特性和限制的更多信息,请参阅 Version 4.0 - What's New?.

构想

The IoT Time Series (TS) Aggregates Service创建数字时间序列数据的聚合摘要,并提供读取这些数据的接口。该服务可加大应用程序执行检索的时间跨度,减小检索的数据集数量,比处理全部原始时间序列数据效果更好。

例如,aspect 每秒都会产生新数据,每月可累积到大约 250 万条记录。应用可以利用 IoT TS Aggregates Service 将当月每一天的记录汇总成一条,这样每月只保留约 30 条记录。

访问

要访问此服务,您需要具有 IoT Time Series Aggregates Service 角色和范围中列出的相应角色。

用户只能读取其租户和子租户的数据。

基础知识

提示

在IoT环境中, assets指entity,aspect指propertyset

聚合数据

汇总在一个聚合中的数据,其时间戳晚于间隔范围的开始时间,早于或等于间隔范围的结束时间。这样可以保证在聚合中正确反映计数类型的数据。例如,如果设备在每五分钟结束时提供一次数据,则每小时的聚合中包含时间戳从某一整点过五分到下一个整点之前(例如,从 3:05 到 4:00)的数据。

每次聚合将汇总下列信息:

  • 该时间间隔内的第一个数据点值及其对应时间
  • 该时间间隔内的最后一个数据点值及其对应时间
  • 该时间间隔内的最小数据点值及其对应时间
  • 该时间间隔内的最大数据点值及其对应时间
  • 该时间间隔内数据点的计数
  • 该时间间隔内值的总和
  • 该时间间隔内值的平均值
  • 该时间间隔内有效值、不确定值和无效值的计数
  • 区间内标准偏差值

预先计算的聚合

IoT TS Aggregates Service 自动创建并存储预先计算的聚合,供后期检索使用,从而提高聚合查询的性能。将预先计算如下时间间隔的聚合:

间隔时长 描述
1 毫秒 聚合的结束时间是整点1毫秒、整点2毫秒、依此类推。
此间隔时长仅对仿真实体适用
10 毫秒 聚合的结束时间是整点10毫秒、整点20毫秒、依此类推。
此间隔时长仅对仿真实体适用
1 秒 聚合的结束时间是整点1秒、整点2秒、依此类推。
此间隔时长仅对仿真实体适用
2 分钟 聚合的结束时间是整点两分、整点四分、依此类推。达到两分钟间隔后,在下一个两分钟内创建聚合。
此间隔时长仅对性能实体适用
1 小时 聚合在整点结束。聚合在整点到整点过八分的时间范围内创建。
1 天 聚合在 asset 所在时区的零时结束。聚合在 UTC 时间零时后的十五分钟之内创建。

聚合数据采用 asset 所在时区的时间。

说明

聚合数据并非即时可用。例如,如果在10:00发出间隔时长为1小时的对性能实体的聚合数据请求,响应结果中将不会包含 9:00 到 10:00 时间范围内的聚合数据,这是因为尚未对这一期间的数据进行计算。

按需聚合

*按需聚合仅对性能实体适用。*当客户端请求的聚合数据无法使用预先计算的聚合进行计算(例如,间隔时长为 1 分钟或于 10:01 开始)时,这类聚合被创建。IoT TS Aggregates Service 使用合适的 预先计算的聚合并根据需要计算缺失项。
IoT TS Aggregates Service 支持以下间隔时长:

  • 1-120 秒
  • 1-60  分钟
  • 1-24  小时
  • 1  天以上
  • 1  周以上
  • 1  个月以上

聚合创建

数据可用性

对于性能实体,仅当该时间范围内存在时间序列数据时,才会创建聚合数据。聚合的创建依据是当时可用的数据。迟到的数据不包含在初始聚合结果中,但会在延迟后触发重新计算。 对于仿真实体,当时间序列数据的摄取作业完成时,才会创建聚合数据。如果同一小时的数据被另一个作业摄取,则重新计算各自的聚合。

质量代码数据

如果 variable 配置为包含质量代码数据,则服务将使用质量代码数据来对聚合进行评级。质量代码与租户中定义的有效和不确定阈值进行比较(默认情况下,根据 OPC UA 标准设置这些值)。

小于或等于 goodThreshold 值的所有数据均定义为有效数据。
大于 goodThreshold 值且小于或等于 uncertainThreshold 值的所有数据均定义为不确定数据。
大于 uncertainThreshold 值的所有数据均定义为无效数据。

计算上面列出的汇总值时只使用有效数据和不确定数据。计算时会忽略无效数据。每个聚合都包含三种类型数据的计数:countgoodcountuncertaincountbad。如果时间序列记录没有任何可用的质量代码数据,则认为该记录有效。

功能

IoT TS Aggregates Service 公开其 API 以实现以下任务:

  • 使用预先计算的聚合读取聚合间隔数据
  • 为自定义间隔生成聚合的间隔数据

限制

  • 按需聚合只能从最多 5,000 个原始时间序列条目创建
  • 按需聚合仅对性能实体适用
  • 查询在一个响应中最多只能返回 200 个聚合间隔
  • 此服务不支持与 UTC 时间相差 15 或 45 分钟的时区,例如,尼泊尔标准时间 (UTC+05:45)。支持与GMT时间相差整时数的时区和与 UTC 时间相差 30 分钟的时区,例如,印度时间 (UTC+05:30)
  • 用于在时间戳中包含时区的 '+' 字符必须在时间范围内编码为 '%2B'。例如, 应编码为 2017-09-21T14:08:00%2B02:00 而非 2017-09-21T14:08:00+02:00。

要获取最新的限制列表,请转至发布说明,并选择最新日期。再转至“MindAccess Developer Plan 订户和 MindAccess Operator Plan 订户”,选择您感兴趣的 IoT TS Aggregates Service 服务。

示例场景

风力涡轮机产生有关叶片速度的时间序列数据。数据连续发送到 MindSphere。

您可以利用 IoT TS Aggregates Service API 收集风车速度的聚合数据。

相关链接

还有问题?

向社区提问


除非另行声明,该网站内容遵循MindSphere开发许可协议.


Last update: June 30, 2020