Hi Flink community :wave:, I recently built an Ev...
# show-and-tell
j
Hi Flink community 👋, I recently built an Event-Driven Architecture combining Flink, Kafka, and Online Machine Learning, and I wanted to share it here! The project uses a Digital Twin of a steel mill to stream asynchronous manufacturing data. In the physical world, prediction requests happen instantly, but ground-truth physical sensor data is delayed. To solve this, I built a Flink application (written in Kotlin) to act as the core stream processor and online learning engine: • It uses a
CoProcessFunction
and Flink's managed state to buffer and align the delayed streams safely. • Once the streams are joined, the operator runs a prequential train/test loop to update an Online ML model (using the Massive Online Analysis framework) on the fly, adapting to physical concept drift. • It also implements a stateful Shadow Mode router to constantly evaluate the AI's residual error against a deterministic physics baseline in real-time. The whole stack is containerized so you can easily spin it up, trigger a mechanical shock via a UI, and watch how Flink joins the streams and reroutes the fallback logic. • Blog Post: https://jaehyeon.me/blog/2026-04-21-digital-twin-online-machine-learning/ • GitHub: https://github.com/jaehyeon-kim/oml-digital-twin-hotrolling
👏 2