1、概述
在ThingsBoard官方文档中有说明:ThingsBoard 规则引擎支持对传入遥测数据的基本分析,例如阈值交叉。规则引擎背后的想法是提供基于设备属性或数据本身将数据从物联网设备路由到不同插件的功能。
然而,大多数现实生活中的用例也需要高级分析的支持:机器学习、预测分析等。
本教程将向您展示如何:
- 使用内置规则引擎功能将遥测设备数据从 ThingsBoard 路由到 Kafka 主题(适用于 ThingsBoard CE 和 PE)。
- 使用简单的 Kafka Streams 应用程序聚合来自多个设备的数据。
- 使用 ThingsBoard PE Kafka 集成将分析结果推送回 ThingsBoard 进行持久化和可视化。
注意:上面第三点 "使用 ThingsBoard PE Kafka 集成将分析结果推送回 ThingsBoard 进行持久化和可视化" 目前在ThingsBoard CE版是不支持集成功能的,所以我们没办法拿到kafka stream 分析完之后的数据,所以就引出了这一章的重点:自定义规则节点来订阅kafka stream 的消息并且从规则链往后传输进行后续的逻辑处理。
2、流程架构图
如下如所示:这张图很形象的说明了ThingsBoard使用kafka stream 对设备数据进行分析的流程:
设备上传的数据通过规则节点 "kafka" 将数据推到kafka的的 IN TOPIC 中,然后使用kafka st