I have an interest in storing time series data generated by IIoT-type devices. I am expecting these devices to either generate MQTT packages directly or via some form of OPC UA/MQTT gateway. The issue I am having is understanding the required architecture to ingest the MQTT payloads into TimeScaleDB.
As an example:
- EMQX provide a MQTT Broker and Rule Engine that can then forward ‘messages’ to PostgreSQL. Under these circumstances, I would appear to need two separate cloud instances (EMQX Enterprise and TimescaleDB) which doesn’t appear to be overly elegant
- An alternative approach would be to use a third-party MQTT broker and write my own MQTT client/ingestion routine around it. As far as I am aware I couldn’t run this within the TimescaleDB instance, please correct me if I am wrong, so again I need to have two instances.
Is my understanding correct? Is there a more elegant way of ingesting MQTT data? Any guidance would be much appreciated.