IoT Time Series Aggregates Service¶
构想¶
The IoT Time Series (TS) Aggregates Service创建数字时间序列数据的聚合摘要,并提供读取这些数据的接口。该服务可加大应用程序执行检索的时间跨度,减小检索的数据集数量,比处理全部原始时间序列数据效果更好。
例如,aspect 每秒都会产生新数据,每月可累积到大约 250 万条记录。应用可以利用 IoT TS Aggregates Service 将当月每一天的记录汇总成一条,这样每月只保留约 30 条记录。
访问¶
要访问此服务,您需要具有 IoT Time Series Aggregates Service 角色和范围中列出的相应角色。
用户只能读取其租户和子租户的数据。
基础知识¶
聚合数据¶
汇总在一个聚合中的数据,其时间戳晚于间隔范围的开始时间,早于或等于间隔范围的结束时间。这样可以保证在聚合中正确反映计数类型的数据。例如,如果设备在每五分钟结束时提供一次数据,则每小时的聚合中包含时间戳从某一整点过五分到下一个整点之前(例如,从 3:05 到 4:00)的数据。
每次聚合将汇总下列信息:
- 该时间间隔内的第一个数据点值及其对应时间
- 该时间间隔内的最后一个数据点值及其对应时间
- 该时间间隔内的最小数据点值及其对应时间
- 该时间间隔内的最大数据点值及其对应时间
- 该时间间隔内数据点的计数
- 该时间间隔内值的总和
- 该时间间隔内值的平均值
- 该时间间隔内有效值、不确定值和无效值的计数
- 区间内标准偏差值
预先计算的聚合¶
IoT TS Aggregates Service 自动创建并存储预先计算的聚合,供后期检索使用,从而提高聚合查询的性能。将预先计算如下时间间隔的聚合:
间隔时长 | 描述 |
---|---|
2 分钟 | 聚合的结束时间是整点两分、整点四分、依此类推。达到两分钟间隔后,在下一个两分钟内创建聚合。 |
1 小时 | 聚合在整点结束。聚合在整点到整点过八分的时间范围内创建。 |
1 天 | 聚合在 asset 所在时区的零时结束。聚合在 UTC 时间零时后的十五分钟之内创建。 |
聚合数据采用 asset 所在时区的时间。
说明
聚合数据并非即时可用。例如,如果在10:00发出间隔时长为1小时的对性能 asset 的聚合数据请求,响应结果中将不会包含 9:00 到 10:00 时间范围内的聚合数据,这是因为尚未对这一期间的数据进行计算。
按需聚合¶
*按需聚合仅在预先计算聚合上适用。*当客户端请求的聚合数据无法使用预先计算的聚合进行计算(例如,间隔时长为 4 分钟或于 10:00 开始)时,这类聚合被创建。IoT TS Aggregates Service 使用合适的预先计算的聚合并根据需要生成聚合。
IoT TS Aggregates Service 支持以下间隔时长:
- 2-60 分钟 (2的倍数)
- 1-24 小时
- 1 天以上
- 1 周以上
- 1 个月以上
聚合创建¶
数据可用性¶
对于性能 asset,仅当该时间范围内存在时间序列数据时,才会创建聚合数据。聚合的创建依据是当时可用的数据。迟到的数据不包含在初始聚合结果中,但会在延迟后触发重新计算。
质量代码数据¶
如果 variable 配置为包含质量代码数据,则服务将使用质量代码数据来对聚合进行评级。质量代码与租户中定义的有效和不确定阈值进行比较(默认情况下,根据 OPC UA 标准设置这些值)。
小于或等于 goodThreshold
值的所有数据均定义为有效数据。
大于 goodThreshold
值且小于或等于 uncertainThreshold
值的所有数据均定义为不确定数据。
大于 uncertainThreshold
值的所有数据均定义为无效数据。
计算上面列出的汇总值时只使用有效数据和不确定数据。计算时会忽略无效数据。每个聚合都包含三种类型数据的计数:countgood
、countuncertain
和 countbad
。如果时间序列记录没有任何可用的质量代码数据,则认为该记录有效。
功能¶
IoT TS Aggregates Service 公开其 API 以实现以下任务:
- 使用预先计算的聚合读取聚合间隔数据
限制¶
- 聚合查询只支持预计算的间隔时长。
- 不支持查询模拟 asset 的聚合。
- 查询
分钟
聚合的最大日期范围是24小时。 - 查询
小时
聚合的最大日期范围是7天。 - 查询
天/周/月
聚合的最大日期范围是90天。 - 小型、中型和大型租户每分钟的 API 请求速率限制分别为60、120和240。对于需要每秒更多请求的情况,请通过支持渠道与我们联系。
- 此服务不支持与 UTC 时间相差 15 或 45 分钟的时区,例如,尼泊尔标准时间 (UTC+05:45)。支持与GMT时间相差整时数的时区和与 UTC 时间相差 30 分钟的时区,例如,印度时间 (UTC+05:30)
要获取最新的限制列表,请转至发布说明,并选择最新日期。再转至“MindAccess Developer Plan 订户和 MindAccess Operator Plan 订户”,选择您感兴趣的 IoT TS Aggregates Service 服务。
示例场景¶
风力涡轮机产生有关叶片速度的时间序列数据。数据连续发送到 MindSphere。
您可以利用 IoT TS Aggregates Service API 收集风车速度的聚合数据。