Skip to main content

Learning path

Streaming Systems learning path: everything to study, topic by topic

Comprehensive assessment of streaming data semantics based on Akidau, Chernyak & Lax's Streaming Systems: batch vs streaming, the stream/table duality, event-time vs processing-time, windowing, watermarks, triggers, accumulation modes, exactly-once processing, stateful pipelines, and the Beam/Dataflow model.

Short answer

To learn Streaming Systems, work through 6 modules and 25 topics in the order they build on each other. It starts with Streaming Foundations, then moves on to Windowing and Time & Watermarks. Use the map as a checklist, or measure your level and study only what is missing.

6
modules
25
topics
55
min to assess

What you will study

Topics are grouped by module. Open one to see its objectives and key concepts.

1 · Streaming Foundations5 topics
  • Batch vs Streaming

    Understanding the false dichotomy between batch and streaming: streaming is a superset that processes unbounded data with low latency, while batch is streaming over a bounded dataset

    Objectives

    • Explain why batch is a bounded special case of streaming
    • Identify when a streaming approach is preferable to batch

    Key concepts

    • bounded data
    • unbounded data
    • batch as a special case of streaming
    • low latency
    • completeness vs latency
  • Unbounded Data

    The nature of unbounded (infinite) datasets: data that arrives continuously with no known end, requiring incremental processing and a strategy for emitting results before all data has arrived

    Objectives

    • Describe the challenges unbounded data poses to traditional batch tools
    • Explain why results must be emitted incrementally over unbounded data

    Key concepts

    • infinite datasets
    • continuous arrival
    • incremental processing
    • partial results
    • out-of-order arrival
  • Stream/Table Duality

    The fundamental duality: a stream is the changelog of a table, and a table is the accumulated snapshot of a stream. Grouping converts a stream to a table; ungrouping converts a table back to a stream

    Objectives

    • Explain how a stream and a table are two views of the same data
    • Describe how grouping and triggering relate streams to tables

    Key concepts

    • stream as changelog
    • table as snapshot
    • grouping converts stream to table
    • ungrouping converts table to stream
    • materialized view
  • Event-Time vs Processing-Time

    The two domains of time: event-time (when the event actually occurred) vs processing-time (when the system observes it), and the variable, unpredictable skew between them

    Objectives

    • Distinguish event-time from processing-time with concrete examples
    • Explain why skew between the two time domains is variable and unbounded

    Key concepts

    • event-time
    • processing-time
    • time skew
    • out-of-order events
    • ideal vs reality (the time-domain diagonal)
  • The What/Where/When/How Framework

    The four questions that structure any out-of-order data processing pipeline: WHAT results are computed (transforms), WHERE in event-time they are computed (windowing), WHEN in processing-time they are materialized (triggers/watermarks), and HOW refinements relate (accumulation)

    Objectives

    • Map the four questions to the corresponding model primitives
    • Use the framework to decompose a streaming requirement

    Key concepts

    • what = transformations
    • where = windowing
    • when = triggers and watermarks
    • how = accumulation
    • separation of concerns
2 · Windowing4 topics
  • Fixed Windows

    Fixed (tumbling) windows partition event-time into contiguous, non-overlapping intervals of equal size, with each element assigned to exactly one window

    Objectives

    • Define fixed windows and their key properties
    • Choose an appropriate fixed-window size for an aggregation

    Key concepts

    • tumbling windows
    • non-overlapping intervals
    • fixed size
    • aligned vs unaligned windows
    • one element per window
  • Sliding Windows

    Sliding (hopping) windows defined by a size and a period; when the period is smaller than the size, windows overlap and a single element belongs to multiple windows

    Objectives

    • Explain how size and period determine sliding-window overlap
    • Apply sliding windows to compute smoothed/rolling aggregations

    Key concepts

    • hopping windows
    • window size and slide period
    • overlapping windows
    • element in multiple windows
    • moving averages
  • Session Windows

    Data-driven, dynamic windows that group bursts of activity separated by gaps larger than a configured gap duration; window extents depend on the data itself, not a fixed schedule

    Objectives

    • Explain how session windows form from gaps in activity
    • Choose a gap duration for a user-activity sessionization task

    Key concepts

    • data-driven windows
    • gap duration / timeout
    • activity bursts
    • per-key sessions
    • dynamic window extents
  • Window Merging

    The merging mechanics that make session windows work: each element initially proto-windows, then overlapping windows merge; merging interacts with triggers, watermarks, and state

    Objectives

    • Describe how a runner merges overlapping session windows
    • Explain why merging complicates state and trigger handling

    Key concepts

    • proto-windows
    • merging overlapping windows
    • unmerged vs merged state
    • interaction with triggers
    • end-of-window recomputation
3 · Time & Watermarks4 topics
  • Watermark Fundamentals

    A watermark is a notion of input completeness in event-time: a monotonic assertion that no more data with event-time earlier than the watermark is expected to arrive

    Objectives

    • Define a watermark as a measure of event-time completeness
    • Explain how watermarks let a system reason about 'done' over unbounded data

    Key concepts

    • input completeness
    • monotonic watermark
    • event-time progress
    • watermark as a function of processing-time
    • completeness signal
  • Perfect vs Heuristic Watermarks

    Perfect watermarks guarantee no late data but require perfect knowledge of the input; heuristic watermarks estimate completeness and may be wrong, producing late data that must be handled

    Objectives

    • Contrast perfect and heuristic watermarks and their failure modes
    • Reason about the latency/correctness tradeoff a heuristic watermark implies

    Key concepts

    • perfect watermark
    • heuristic watermark
    • too-fast watermark causes late data
    • too-slow watermark adds latency
    • completeness vs latency tradeoff
  • Watermark Propagation

    How watermarks flow through a multi-stage pipeline: input/output watermarks per stage, the min across inputs and across keys/shards, and how the slowest source bounds overall event-time progress

    Objectives

    • Trace how a watermark propagates across pipeline stages
    • Explain why the slowest input gates the whole pipeline's watermark

    Key concepts

    • input and output watermarks
    • min across inputs
    • per-stage watermarks
    • stragglers bound progress
    • watermark lag
  • Watermark Skew & Latency

    Diagnosing pipeline health via watermark skew (how far the watermark lags real time) and the interplay between completeness, latency, and stuck watermarks caused by stragglers or slow sources

    Objectives

    • Diagnose a stuck or lagging watermark in a running pipeline
    • Decide whether to trust a watermark or tune source idle handling

    Key concepts

    • watermark lag / skew
    • stuck watermark
    • straggler partitions
    • idle source advancement
    • latency vs completeness
4 · Triggers & Accumulation5 topics
  • Event-Time Triggers

    Triggers that fire based on the watermark passing the end of a window, materializing a single on-time result when event-time completeness is reached

    Objectives

    • Explain when an event-time (watermark) trigger fires
    • Use an event-time trigger to emit one complete result per window

    Key concepts

    • trigger at end of window
    • watermark-driven firing
    • on-time pane
    • single result per window
    • completeness-first
  • Processing-Time Triggers

    Triggers that fire on processing-time intervals (e.g., every N seconds) to deliver low-latency, regularly-updated partial results regardless of event-time completeness

    Objectives

    • Explain how processing-time triggers produce early/speculative results
    • Choose a processing-time trigger period for a latency target

    Key concepts

    • periodic processing-time firing
    • repeated partial results
    • low-latency updates
    • aligned vs unaligned delays
    • speculative panes
  • Data-Driven Triggers

    Triggers that fire based on properties of the data accumulated in a window, such as a count of elements or a size threshold, rather than on time

    Objectives

    • Describe when a data-driven trigger is appropriate
    • Explain the limitations of count-based triggers over unbounded data

    Key concepts

    • count-based triggers
    • data-property thresholds
    • non-time firing
    • limits of data-driven triggers
    • combining with time triggers
  • Composite Triggers

    Combining triggers to express realistic policies: early speculative firings on processing-time, an on-time firing at the watermark, and late firings as late data arrives (the early/on-time/late pattern)

    Objectives

    • Design an early/on-time/late composite trigger for a requirement
    • Reason about how composite triggers balance latency and completeness

    Key concepts

    • early / on-time / late pattern
    • repeatedly + AfterWatermark composition
    • sequencing and combining triggers
    • balancing latency and completeness
    • trigger refinement policy
  • Accumulation Modes

    How successive pane firings relate: discarding (deltas), accumulating (cumulative overwrites), and accumulating-and-retracting (emits a retraction of the prior value plus the new value)

    Objectives

    • Distinguish discarding, accumulating, and accumulating-and-retracting modes
    • Choose an accumulation mode based on how the downstream sink combines panes

    Key concepts

    • discarding mode
    • accumulating mode
    • accumulating-and-retracting mode
    • retractions
    • downstream consumer semantics
5 · Correctness & State4 topics
  • Late Data Handling

    Handling data that arrives after the watermark has passed its window's end (late data), which occurs whenever a heuristic watermark advances too aggressively

    Objectives

    • Explain why late data arises and how late triggers incorporate it
    • Decide whether to drop or process late records for a use case

    Key concepts

    • late data definition
    • late firings
    • dropping vs incorporating late data
    • heuristic watermark consequences
    • correctness recovery
  • Allowed Lateness & Garbage Collection

    The allowed-lateness horizon bounds how long past the watermark window state is retained so late data can still be processed; beyond it, state is garbage-collected and later data is dropped

    Objectives

    • Explain how allowed lateness bounds state retention
    • Choose an allowed-lateness value trading correctness against state cost

    Key concepts

    • allowed lateness horizon
    • state retention vs cost
    • garbage collection of windows
    • final pane on GC
    • bounded vs unbounded state
  • Exactly-Once Processing

    Achieving effectively-once output semantics despite retries and failures via deterministic operations, checkpointing, idempotent or transactional sinks, and deduplication

    Objectives

    • Explain how exactly-once is achieved despite retries and failures
    • Identify the sink and operation properties exactly-once requires

    Key concepts

    • at-least-once vs at-most-once vs exactly-once
    • effectively-once
    • checkpointing
    • idempotent / transactional sinks
    • deterministic operations and deduplication
  • Stateful Processing & Timers

    General stateful processing primitives — persistent per-key state and event-time/processing-time timers — that underpin windowing, joins, and custom incremental aggregations

    Objectives

    • Describe how persistent state and timers generalize windowing
    • Design a custom stateful operation using timers and per-key state

    Key concepts

    • per-key persistent state
    • event-time and processing-time timers
    • incremental combine vs raw buffering
    • state as the foundation of windowing
    • joins as stateful operations
6 · Streaming Architecture3 topics
  • The Beam/Dataflow Model

    The unified Beam/Dataflow model that separates the WHAT/WHERE/WHEN/HOW questions from the runner, letting one pipeline run in batch or streaming across engines with consistent semantics

    Objectives

    • Explain how the Beam model decouples semantics from the execution engine
    • Articulate how one pipeline runs in both batch and streaming modes

    Key concepts

    • pipeline / runner separation
    • PCollections and PTransforms
    • portability across engines
    • unified batch + streaming
    • model independent of execution
  • Lambda vs Kappa Architectures

    Lambda architecture runs parallel batch and speed layers and reconciles them; Kappa serves all queries from a single replayable streaming layer. The semantic argument for a single streaming system

    Objectives

    • Contrast Lambda and Kappa architectures and their costs
    • Argue when a single streaming layer obviates a separate batch layer

    Key concepts

    • lambda batch + speed layers
    • reconciliation / serving layer
    • kappa single streaming layer
    • reprocessing via replay
    • operational complexity tradeoffs
  • Streams-and-Tables Theory

    The deeper streams-and-tables view that recasts the whole model: grouping/triggers turn a stream into a table and ungrouping turns a table into a stream, unifying batch, streaming, SQL, and joins

    Objectives

    • Recast windowing and triggers in streams-and-tables terms
    • Explain how the theory unifies SQL, batch, and streaming joins

    Key concepts

    • everything is streams and tables
    • grouping/ungrouping as the core operations
    • triggers bridge tables back to streams
    • streaming SQL and time-varying relations
    • stream/stream and stream/table joins

Levels: Junior, Mid, Senior, and Expert

Explain it in your own words

Graded by AI · no account · 1 question

No options to guess from: you write, the AI grades against the topic's rubric and tells you what level your answer reads at.

0 / 600

Already studying Streaming Systems?

The assessment measures topic by topic, and your plan skips what you already know.

Open to read. An account is only needed to be measured.

Frequently asked questions

Where should I start studying Streaming Systems?

Start with Streaming Foundations: Batch vs Streaming, Unbounded Data, and Stream/Table Duality. The map orders topics by what they depend on, so each one prepares the next.

How long does a full Streaming Systems assessment take?

A full assessment of this path takes about 55 minutes. Study time depends on where you start; a diagnostic shows which topics you can skip.

Do I need an account to use this page?

No. The map, objectives and key concepts are open. You only need an account to be measured, get your gap by topic and receive a plan.