The blog post describes a simplified view of the demo - the full version is actually more like:
The use of MQTT was a convenience because we already had a way of getting the virtual controllers to publish/subscribe to MQTT brokers. Rather than add Kafka support to that, it was simpler to just bridge the gap using Kafka Connect.
- Virtual controller used in the demo
- requires a custom version of Scratch with MQTT support to load this file
- konami-source
- Kafka Connect source connector with a custom Single Message Transform to turn MQTT string messages into JSON
- Kafka topics
- Event Streams topic definition
- Flink SQL job
- konami-sink
- Kafka Connect sink connector