risingwavelabs / risingwave

Best-in-class stream processing, analytics, and management. Perform continuous analytics, or build event-driven applications, real-time ETL pipelines, and feature stores in minutes. Unified streaming and batch. PostgreSQL compatible.
https://go.risingwave.com/slack
Apache License 2.0
6.99k stars 575 forks source link

Support protobuf encoding for MQTT source #18987

Open riaan53 opened 1 week ago

riaan53 commented 1 week ago

Is your feature request related to a problem? Please describe.

I want to consume Sparkplug messages which the payload is a protobuf spec over standard mqtt. Not all industrial sensors/protocols natively support mqtt, sparkplug bridges this gap.

Supporting protobuf will enable use cases like this and users who prefer protobuf over json for efficiency.

https://www.hivemq.com/solutions/technology/mqtt-sparkplug/

https://www.hivemq.com/blog/strong-adoption-of-mqtt-in-iiot/

Describe the solution you'd like

Just like Kafka, nats and rest add a protobuf encoding with file and/or other schema location.

This will also add more consistency to the encoding options over all message queues.

Describe alternatives you've considered

No alternative available.

Additional context

No response

fuyufjh commented 1 week ago

The MQTT source was done by the community #15388. Welcome for contribution!