有没有办法将所有收到的消息存储到VerneMQ中的TimescaleDB中?
有没有我可以使用的现有插件或服务?
发布于 2020-05-06 14:50:03
为此,您需要一个自定义插件。VerneMQ背后的公司或其他合作伙伴可以帮助您编写自定义插件的咨询。或者,您可以使用VerneMQ webhook将数据发送到将写入TimescaleDB的webhook,尽管这不是更有效/可伸缩的方法。
发布于 2020-05-08 22:10:15
我不熟悉VerneMQ,但谷歌建议它应该与PostgreSQL (https://vernemq.com/blog/2015/08/05/vernemq-says-hi-to-postgresql.html)进行现有的集成。
TimescaleDB是作为PostgreSQL的扩展而构建的,并通过标准的PostgreSQL连接器进行通信。因此,从尝试任何现有的PostgreSQL连接器/集成开始。
发布于 2021-06-15 16:15:01
首先,我要稍微概括一下这个问题。对于所描述的用例,它将与“将MQTT数据写入PostgreSQL”相同。
您需要使用任何与VerneMQ兼容的客户端订阅MQTT主题,然后将此数据写入PostgreSQL数据库(TimescaleDB为此完全依赖于PostgreSQL )。
选项1:编写自己的服务来读取MQTT主题(使用像Eclipse Paho这样的MQTT客户端库),然后将数据写入PostgreSQL。
选项2:使用Telegraf (https://docs.timescale.com/timescaledb/latest/tutorials/telegraf-output-plugin/#before-we-start)。Telegraf的唯一问题--支持PostgreSQL的版本只能作为fork使用,而且相当过时(1.13)。
选项3:使用Node-RED。他们有用于读取MQTT数据的内置插件和一个用于写入PostgreSQL的插件(这个插件可以工作:https://flows.nodered.org/node/node-red-contrib-re-postgres)
https://stackoverflow.com/questions/60596227
复制相似问题