本章以采集楼层中传感器数据为例,介绍将数据转发至时序时空数据库(TSDB)的数据流转规则设置。

场景

在No-1大厦的两个楼层中(比如,F1和F2层),每层分布2个传感器来记录该楼层的温度、湿度、PM2.5、甲醛含量等环境信息。

传感器每5秒采集一次环境数据并上报至物联网平台,物联网平台通过设置好的数据流转规则将环境数据转发到TSDB。您可以利用TSDB的空间聚合和降采样能力轻松实现数据统计与分析。

前提条件

在控制台创建传感器产品和设备,并将设备连接到物联网平台。具体请参考快速入门

数据上报

  • 数据上报频率:1次/5s。
  • 数据上报Topic:/${productKey}/${deviceName}/user/data
  • payload格式:
    {"temperature":25,"humidity":24,"pm25":11,"hcho":0.02}

配置规则

  1. 登录物联网平台控制台
  2. 选择规则引擎,单击创建规则,创建JSON数据格式规则。
  3. 请参考设置数据流转规则,编写处理数据的SQL。本示例中的SQL如下:
    SELECT deviceName() as deviceName, timestamp() as time, attribute('floor') as floor, attribute('building') as building, temperature, humidity, pm25, hcho FROM "/${productKey}/+/user/data"
  4. 添加转发数据操作。

    设置将数据转发到一个TSDB的VPC实例中。



时序数据使用

  1. 登录时序时空数据库控制台
  2. 实例列表中找到存储数据的VPC实例,并单击右侧管理
  3. 参考时序洞察中的查询数据操作步骤,查询IoT发送到实例中的数据。
    • 按楼层聚合对比数据,根据如下表格设置查询参数:
      参数 取值
      空间聚合函数 选择avg
      标签 building=No-1
      分组 选择floor

      数据查询结果如下图所示:



    • 按大厦聚合avg,降采样1分钟查询数据,根据如下表格设置查询参数:
      参数 取值
      空间聚合函数 选择avg
      标签 此处添加如下两个标签:
      • building=No-1
      • floor=f1/f2
      降采样 打开开关
      降采样聚合函数 选择max
      采样时间间隔 选择1分钟

      数据查询结果如下图所示: