写点什么

EMQX+ 阿里云 Tablestore 多场景一站式 IoT 数据解决方案正式发布

作者:EMQ映云科技
  • 2022 年 5 月 23 日
  • 本文字数:2473 字

    阅读完需:约 8 分钟

EMQX+阿里云Tablestore多场景一站式IoT数据解决方案正式发布

在不久前落幕的 2022 阿里云全球数据湖峰会上,EMQ 与阿里云联合发布了一站式工业数字化解决方案的构想这一方案的实现基于云原生分布式物联网消息服务器 EMQX 和阿里云表格存储 Tablestore 的高效集成,结合 EMQ 物联网数据基础设施产品矩阵中的其他边缘计算产品,实现边缘工业数据到云端的综合接入、汇聚与清洗,以及后端大数据分析和应用。

经过双方研发团队的共同努力,目前 EMQX 与 Tablestore 已正式完成技术对接。结合双方产品在数据采集和存储分析方面的优势,EMQ 与阿里云共同打造了一套更加通用、适用于更多行业场景的一体化解决方案。

合作背景

物联网应用场景往往面临多元化数据存储的需求,EMQ 云边一体化产品组合通过边缘的协议接入、数据清洗以及云端强大的规则引擎,可以实现元数据、消息数据、时序数据的一站式集成对接能力。

在 IoTstore 组合存储方面,客户大多是通过开源产品组合方案(Mysql+ES+HBase+OPENTSDB 等)实现,技术架构、运维等往往成本较高,Tablestore 则通过一体化架构,为 IoTstore 提供了大规模、免运维、低成本、易扩展的解决方案。

EMQX+TableStore 有高度重叠的应用场景和目标客户,可共同为企业客户提供一站式的物联网消息通信、数据集成和 IoT 数据存储服务。

方案详解

产品介绍

  • EMQX:云原生分布式物联网消息服务器

EMQX 通过一体化的分布式 MQTT 消息服务和强大的 IoT 规则引擎,为高可靠、高性能的物联网实时数据移动、处理和集成提供动力,「随处运行,无限连接,任意集成」,助力企业快速构建关键业务的 IoT 平台与应用。

以 EMQX 为核心,结合物联网边缘工业协议网关软件 Neuron、超轻量边缘 MQTT 消息服务器 NanoMQ 以及超轻量物联网边缘数据流式分析引擎 eKuiper,共同构成了 EMQ 面向未来的现代物联网数据基础设施。在边缘侧可以实现工业协议适配、边缘轻量级消息服务、边缘流计算(数据过滤、清洗、聚合与 AI 推理扩展),在云端则可实现全网络、多协议的海量消息接入能力,强大的规则引擎实现 IoT 数据的编解码、数据转发、数据持久化等灵活集成能力,为后端大数据分析和应用提供可靠的数据支撑,构建云边一体化的 IoT 基础设施能力底座。

  • TableStore:一站式物联网存储 IoTstore

表格存储(Tablestore)是阿里云推出的一款云上的结构化数据存储产品,面向海量结构化数据提供 Serverless 表存储服务,具备极为丰富的产品功能和生态,提供了物联网存储 IoTstore、宽表引擎、多元索引等能力来满足时序数据、消息数据、元数据场景的需求。同时针对物联网场景深度优化提供一站式的 IoTstore 解决方案,提供海量数据低成本存储、毫秒级的在线数据查询和检索以及灵活的数据分析能力。

表格存储 Tablestore 提供的 Serverless 服务模式极为适合物联网数据存储,计算和存储均可独立弹性扩展。在使用过程中无需关心存储容量和计算扩容,存储容量可弹性扩展至 PB 级,提供冷热分层存储大大降低存储成本。底层对设备元数据进行多维索引,满足灵活的设备检索需求。提供 SQL 能够对时序数据进行查询和分析,灵活的满足数据分析需求。

方案架构

该方案通过 EMQX 的规则引擎实现与 Tablestore 集成,用户可以利用可视化的规则引擎配置界面,快速便捷实现设备元数据、时序数据、消息数据快速集成入库。

EMQX 与 Tablestore 团队针对产品高效对接都做了专项优化工作,实现了多元的 IoT 数据高效存储集成。通过 Tablestore 一体化架构,为 IoTstore 提供大规模、免运维的低成本、易扩展的一站式解决方案,有效解决了数据库产品的技术选型、分类存储等技术难点。

EMQX+Tablestore 联合解决方案为企业客户提供一站式的物联网消息通信、数据集成和 IoT 数据存储,可以广泛应用于车联网、充电桩、IM 消息、物联网、智能推选等应用场景。

以车联网场景为例,该场景涉及很多车况感知数据上报和车控消息的下发,车辆定时会更新当前的最新状态信息,如发动机当前转速、当前车速等。这些描述车辆最新状态信息的数据我们称之为元数据;而在智能汽车行驶过程中,车辆的状态数据会随着时间而变化,如车辆一段时间内的车速、胎压等,这些描述车辆历史状态信息的数据我们称之为时序数据;还有一种数据场景是对车辆行为进行控制的指令消息,例如通过车主的手机 APP 远程开启空调的车控指令下发和执行结果反馈,这些控制指令的上下行被称为消息数据。

不同类型的数据应用的场景各不相同,所以对存储系统的需求也有所不同。我们之前可能需要通过 MySQL、Kafka、Redis、HBase 等多套不同的数据库产品来融合实现,而现在我们则可以基于 EMQX+Tablestore 轻松实现一站式数据采集与存储。

方案实践:如何实现 EMQX 与 Tablestore 的对接

创建数据库实例

*注:创建实例操作步骤请参考 Tablestore 官方文档

点击实例管理,点击时序表列表。创建时序表。

点击上一步中创建的时序表,进入时序表管理。点击数据管理,创建时间线,按照业务设计创建出时间线。

创建规则引擎资源

登录 EMQXDashboard,点击规则引擎-资源-创建资源,下拉框中找到阿里云表格存储 Tablestore(时序)

使用创建出的实例属性,填写对应 Tablestore 服务器实例名称

AccessKey&Secret 需要使用阿里账号申请(详细申请步骤请参考阿里云说明文档:为 RAM 用户创建访问密钥,链接地址:https://help.aliyun.com/document_detail/116401.htm)。

服务器地址请按照部署方式的不同,填写不同的域名。

创建规则

规则中 SQL 语句的编写,请参考官网文档中规则引擎章节。

创建动作

表名与度量名称,请按照创建的表名与度量名称填写(度量名称可以为空字符串)。

开启同步写入之后,规则引擎将按照批量大小与批量间隔写入数据,以提高高并发场景下的服务性能。

Tablestore 支持的数据格式:

  • int

  • double

  • boolean

  • string

  • binary

这些格式可以被规则引擎自动的识别并分类。但是字符串型数据,默认处理方式为二进制数据,以保证最佳的兼容性。如果需要指定字段值为字符串类型,可以在创建动作时,将字段填写到字符型数据列名中。之后会则引擎会按照字符串的格式方式处理改字段值。

生产测试数据

使用先进的桌面 MQTT 客户端 MQTTX,登录设备,并发送一条数据。

输入度量名称(演示使用的是 m_re2),clientID 为 123456,我们使用 client=123456 作为查询条件,点击查询。

至此,我们可以看到数据已经写入成功。

用户头像

全球领先的开源物联网基础设施软件供应商 2021.06.09 加入

面向 5G 和物联网市场的消息与流处理开源软件公司。

评论

发布
暂无评论
EMQX+阿里云Tablestore多场景一站式IoT数据解决方案正式发布_阿里云_EMQ映云科技_InfoQ写作社区