前言
InfluxDB 是一个用于存储和分析时间序列数据的开源数据库,内置 HTTP API,类 SQL 语句的支持和无结构的特性对使用者而言都非常友好。它强大的数据吞吐能力以及稳定的性能表现使其非常适合 IoT 领域。
通过 EMQ X 消息引擎,我们可以自定义 Template 文件,然后将 Json 格式的 MQTT 消息转换为 Measurement 写入 InfluxDB:
场景介绍
该场景需要将 EMQ X 指定主题下且满足条件的消息存储到 InfluxDB 时序数据库。为了便于后续分析检索,消息内容需要进行拆分存储。
该场景下客户端上报数据如下:
-
Topic:data/sensor
-
Payload:
{ "location": "bedroom", "data": { "temperature": 25, "humidity": 46.4, "pm2_5": 0.5 } }
准备工作
数据库安装及初始化
创建 db
数据库并开放 8089 UDP 端口。
$