IoTDB 入门教程 实战篇②——MQTT集成

一、前文

IoTDB入门教程——导读

IoTDB时序数据库内置MQTT服务器,允许远程设备将消息直接发送到IoTDB内置的MQTT服务器,并可以直接存入IoTDB时序数据库。

如果是没有远程控制功能,单纯的传感器类的设备,比如远程抄水表项目、远程抄电表项目、智慧实验室的温湿度传感器等。

直接使用IoTDB就很方便。设备通过MQTT推送数据到IoTDB内置的MQTT服务器,并直接存入IoTDB数据库中。

二、配置参数

  • 配置文件路径:apache-iotdb-1.3.2-all-bin\conf\iotdb-common.properties
  • MQTT服务默认是关闭的,修改enable_mqtt_service=true即可
  • MQTT服务默认主机是127.0.0.1,修改mqtt_host=127.0.0.1即可,修改成mqtt_host=0.0.0.0
  • MQTT服务默认端口是1883,修改mqtt_port=1883即可
  • 还有更多参数用来配置MQTT服务,如下所示
####################
### MQTT Broker Configuration
####################

# whether to enable the mqtt service.
# Datatype: boolean
enable_mqtt_service=true

# the mqtt service binding host.
# Datatype: String
mqtt_host=0.0.0.0

# the mqtt service binding port.
# Datatype: int
mqtt_port=1883

# the handler pool size for handing the mqtt messages.
# Datatype: int
# mqtt_handler_pool_size=1

# the mqtt message payload formatter.
# Datatype: String
# mqtt_payload_formatter=json

# max length of mqtt message in byte
# Datatype: int
# mqtt_max_message_size=1048576
  • 修改配置参数后,重启IoTDB,再netstat -nplt查看。
  • 就能看到1883端口的MQTT服务起来了。

在这里插入图片描述

三、开放端口

  • 记得在服务器安全组上要开放MQTT服务的端口

在这里插入图片描述

四、MQTT客户端连接

  • 使用MQTTX客户端连接MQTT服务器
  • MQTT服务器地址端口用户名密码,按照实际修改。
  • 值得注意的是,IoTDB时序数据库内置的MQTT服务器不支持MQTT 5.0协议,所以只能选择MQTT 3.1.1协议。
  • 最后点击连接按钮。
    在这里插入图片描述
    在这里插入图片描述

五、推送数据

  • 标题topic无限制
  • 数据格式如下
{
  "device":"root.test.test",
  "timestamp":1722069846000,
  "measurements":["status"],
  "values":[66]
}

在这里插入图片描述

六、查询数据

  • 再次查询数据,看看是数据是否存入数据库
  • 查询发现,value(66)的数据已经存入数据库
IoTDB> select status from root.test.test
+-----------------------------+---------------------+
|                         Time|root.test.test.status|
+-----------------------------+---------------------+
|1970-01-21T06:21:09.846+08:00|                 55.0|
|2024-07-21T08:34:04.378+08:00|                  1.0|
|2024-07-21T08:34:21.513+08:00|                  2.0|
|2024-07-21T08:34:23.284+08:00|                  3.0|
|2024-07-21T08:34:25.675+08:00|                 11.0|
|2024-07-21T08:34:28.155+08:00|                 22.0|
|2024-07-21T08:34:30.341+08:00|                 33.0|
|2024-07-27T16:44:06.000+08:00|                 66.0|
+-----------------------------+---------------------+
Total line number = 8
It costs 0.013s

八、参考

MQTT协议| IoTDB Website

觉得好,就一键三连呗(点赞+收藏+关注)

  • 9
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小康师兄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值