Skip to main content

数据使用方式

对于物联网而言,数据是核心,所有的功能基本上都围绕着数据。 围绕着采集、控制、传输、应用,存在多种数据结构。

首先,在传统物联网平台侧一般提供:

  • 二进制数据流:表现形式是消息数据,不区分消息的内部结构。一般用做设备与应用的直接通信。
  • 结构化数据:表现形式是消息数据,一般采用Json方式承载。一般用做设备的统一数字抽象。

对于应用而言,物联网数据通过消息传递到应用后。应用还会将数据组织成对象供业务使用。 某些对于时间要求比较高的需求还会采用 ws 接口提供订阅能力。

数据分层

针对上述需求,tKeel 在数据层面分为 img.png

  • Level1
    • 消息通道:在这个层面平台作为一个消息通道存在,数据直接透传,不做解析
  • Level2
    • 测点(AO、AI、DO、DI): 在这个层面处理的是数据,例如属性、遥测等。
  • Level3 对象与关系:在这个层面平台提供应用所需要的业务对象,以及对象之间的结构关系

Level1 面向设备开发者,提供直接的消息通道,消息内容可以直接使用二进制数据流等私有格式,平台提供通道中的消息记录以及即时查看等审计、调试能力。 Level2 面向传统物联网用户,提供遥测数据的收集以及查询能力,平台将遥测数据转化为时序数据供应用直接使用,可以用于监控、告警等场合。 Level3 面向业务开发者,提供业务对象的缓存以及订阅能力,平台提供对应的快照以及订阅接口。为了方便开发,平台还提供了基础的ws订阅方式,方便插件开发与集成。

应用获取设备数据

img.png

平台支持应用以下列几种方式通过平台获取设备数据。

WebSocket订阅

协议端口身份验证能力
WebSocket平台服务端口Token订阅消息

物联网平台支持基于 WebSocket 消息订阅能力。您可以指定订阅的实体,平台将实体的变化实时推送给你。

数据订阅(AMPQ)

平台对外提供消息服务(AMPQ),云端应用也可以通过监听平台提供的 AMPQ 队列,获取全部的订阅消息。

数据路由

平台支持数据路由功能,您可以预先准备好消息队列或数据库等服务,然后使用规则引擎的数据路由功能,通过数据路由规则将指定设备数据路由到您的消息队列或数据库中。

方式对比

获取方式适用场景优缺点
WebSocket 订阅需要接收设备实时数据的场景。不需要接收全部设备数据。
优点:
支持在动态调整订阅规则。
支持浏览器直接获取。
缺点:
数据量有限制。
不适于全量数据的获取
数据订阅(AMPQ)直接接收设备数据的场景。服务端接收全部设备数据。
优点:
相对简单易用。
系统提供缓存能力,可按照应用处理能力拉取。
缺点:
缓存时间有限。
数据路由数据推送到外部场景。数据推送到外部。
优点:
系统按照模板提供映射。
缺点:
需配置目的地,使用相对复杂。