数据转发到时序数据库

最近更新时间:2019-09-12 16:02:04

概述

规则引擎支持用户配置规则将符合条件的设备上报数据转发到 时序数据库 CTSDB (以下简称 CTSDB ),用户的应用服务器再从 CTSDB 中读取数据内容进行处理。以此利用 CTSDB 海量数据高存储压缩率、数据聚合展示能力,能有效满足日常设备数据存储、分析、可视化展示的需求。

下图为您展示规则引擎将数据转发给 CTSDB 的整个过程:
avatar

配置步骤

  1. 登录 物联网通信控制台,选择左侧菜单【规则引擎】。
  2. 进入规则详情页面,单击【添加行为操作】。
    说明:

    第一次使用时会提示用户授权访问 CTSDB,用户需单击【授权访问 CTSDB 】才能继续创建。
    avatar

  3. 在弹出的“新增行为”窗口,选择行为【数据转发到时序数据库( CTSDB )】,依次选择 CTSDB 地域和实例,并填写基本信息和需要配置的转发字段,单击【创建】即可。
    avatar

完成以上配置后,物联网通信平台会将符合规则条件的设备上报数据转发至用户配置的 CTSDB 实例。用户可参考 CTSDB 开发指南 在自己的应用服务器上读取数据进行处理,或者在 CTSDB 控制台 对数据进行聚合检索查询。

配置参数说明

  • 实例登录账户:用户创建 CTSDB 实例时候输入的账户名,需要在配置规则引擎之前创建实例。
  • 登录密码:用户创建 CTSDB 实例时候输入的账户密码,需要在配置规则引擎之前创建实例。
  • metric : 配置数据转发到 CTSDB 的哪个 metric 下,如果配置规则引擎之时没有该 metric ,物联平台会自行创建。
  • timestamp : 数据写入 CTSDB 时候的时间戳,当前支持4种配置:通过${}引用原始消息的字段值;系统函数。 timestamp() , 命中规则引擎的该消息当前时间,插入当前的系统时间;常量,需要是以秒为单位的 Unix 时间戳;不填写,则默认为命中规则引擎的该消息当前时间。
  • 数据字段 : 类型可选择 CTSDB 里面的 tag 类型或者 field 类型,字段名称输入限制,见 CTSDB 限制,值有3种配置方式:通过 ${} 引用原始消息的字段值;常量,固定值。

高级配置说明

高级配置项,适用于设备上报数据字段是动态扩展的,无法预先配置的情况。如设备底下有若干传感器需要传输数据,但是不同的设备规格、配置不一样,传感器的数目也不固定,但是需要使用规则引擎配置,将设备底下所有传感器的数据都存入 CTSDB ,这里提供高级配置的方案存储:

说明:

  • 默认存储类型:动态扩展存储的字段,在 CTSDB 中的存储类型,默认是 tag 类型
  • key:需要遍历扩展存储的 json 键,物联通信平台会遍历此 key 下的 json 键值嵌套,以'_'为连接符,最后存储到时序数据库,通过规则引擎配置 SQL SELECT 检索得到的 json 结果与配置(支持配置子 key,支持配置多个),到实际存储进 CTSDB 的数据,如下样例所示: