Event stream processing — interactive guide

Learn how Kafka & Flink process energy meter events through tumbling, sliding, session windows, and stream joins

An unbounded, ordered sequence of events — each with a key, value, and timestamp.

Live event stream Animated timeline showing events arriving as colored dots t₀ t →

Fixed-size, non-overlapping windows — every event belongs to exactly one window.

Tumbling window diagram Events divided into equal non-overlapping time buckets

Fixed-size, overlapping windows — one event may appear in multiple windows.

Sliding window diagram Overlapping windows showing how events belong to multiple windows

Dynamic-size windows bounded by inactivity gaps — no fixed size, driven by activity bursts.

Session window diagram Two bursts of events forming session windows that merge or split based on gap

Joining two streams on a matching key within a time window — each pair of matching events produces one joined output record.

Stream join diagram Two input topic timelines and one result timeline, with lines connecting matched events device-readings meter-events Result