Implement Stream Windowing

tumbling, sliding and session windows

Challenge 3 of Data PipelinesAdvanced~55 min

Turn an endless stream of events into finite chunks you can aggregate. Windowing is how stream processors compute things like 'requests per minute' over data that never ends. Build the three canonical window types: tumbling (fixed, non-overlapping), sliding (overlapping), and session (gap-based), plus the per-window aggregation. The bucketing logic inside Flink, Kafka Streams, and Spark Structured Streaming.

4 steps

  1. 1Tumbling Windows
  2. 2Aggregating Each Window
  3. 3Sliding Windows
  4. 4Session Windows
Start step 1