数据转发到表格存储

更新时间:
复制为 MD 格式

您可以使用规则引擎数据流转功能,将数据转发到表格存储(Tablestore)中存储。

前提条件

创建数据表

  1. 登录表格存储控制台,在页面上方,选择地域华东2(上海)

    重要

    企业版实例中,表格存储实例所在地域,必须与企业版实例所在地域一致。

  2. 单击创建实例,在创建实例对话框,输入实例名称(例如IoTDataStore),其他参数使用默认值,然后单击确定

    更多信息,请参见创建表格存储实例

  3. IoTDataStore实例详情页签,单击创建数据表,输入数据表名称,例如iot_data,添加deviceName(字符串型)和timestamp(整型)主键。具体操作,请参见创建数据表

    其他参数如是否允许更新保持默认值,是否加密创建二级索引保持关闭状态。

设置数据流转规则

  1. IoT测试环境实例的左侧导航栏,选择消息转发 > 云产品流转

  2. 云产品流转页面,单击创建规则

    重要

    若当前页面显示新版功能,先单击右上角返回旧版,进入旧版功能页面,再单击创建规则

  3. 创建云产品流转规则对话框,输入规则名称温控器数据流转,数据格式为JSON,单击确认

  4. 规则创建成功后,将跳转到数据流转规则页面。参照以下操作,编辑处理消息数据的SQL,设置数据转发目的地。

    页面分为处理数据转发数据两个区域。处理数据区域显示规则查询语句及编写SQL按钮,转发数据区域显示数据目的地列表及添加操作按钮。

    1. 单击编写SQL,在弹出对话框中,输入SELECT的字段,并选择Topic的数据类型为物模型数据上报、产品为家庭温控器、设备为Device1、物模型模块为默认模块、Topicthing/event/property/post,然后单击确认

      本示例SELECT的字段如下:

      items.temperature.value as temperature, items.humidity.value as humidity,deviceName() as deviceName,timestamp() as time

      SQL编写更多信息,请参见SQL表达式函数列表

      对话框上方的规则查询语句区域显示完整的 SQL 语句,下方的 Topic 区域已选择相应参数。

    2. 单击转发数据一栏的添加操作,设置数据转发目的地为已创建的数据表iot_data。具体操作,请参见数据转发到表格存储(Tablestore)

      编辑操作对话框中,选择操作存储到表格存储(Tablestore)地域选择华东 2实例选择 IoTDataStore数据表选择 iot_data主键中 deviceName 键的值为 ${deviceName},timestamp 键的值为 ${time}角色选择 AliyunIOTAccessingOTSRole,单击确认

  5. 所有设置完成后,返回至云产品流转页,单击规则对应的启动按钮。规则启动后,数据即可按照规则进行转发。

    当虚拟设备有数据上报后,您可以在表格存储的iot_data表中看到实时存储的数据。

    数据表中包含 deviceName(主键)、timestamp(主键)、humiditytemperature 四个字段,每行记录对应一次设备上报的温湿度数据。

    您也可以在IoT企业实例的⽇志服务中,查看完整的流转⽇志,排查数据链路异常情况。

    云端运行日志页签,选择对应产品后,可查看包含时间TraceIDMessageId消息内容DeviceName业务类型操作内容状态等信息的日志记录,通过业务类型(如规则引擎物模型等)追踪数据流转链路,状态200 表示处理成功。

后续步骤

服务端订阅设备消息