Opening Scenario
You operate a Flink job that processes 80K events/sec, maintains 200 GB of keyed RocksDB state, and writes to a downstream system. Twice in the last month, a task manager OOMed and the job restarted from its most recent checkpoint. The first time, recovery took 8 seconds — barely noticed. The second time, it took 47 minutes, during which the consumer lag exploded to 4 hours and the downstream had a noisy data gap. The checkpoint files are 200 GB on S3. The team is unsure: was the second restart slow because of the checkpoint, the recovery, or something else? And what knob actually controls whether recovery is 8 seconds or 47 minutes?
Question Progression
1. What does Flink "checkpoint" and why is the design choice fundamental?
Question. What is actually stored in a checkpoint, and why does Flink — alone among many distributed systems — make periodic state snapshots a first-class operation rather than a backup convenience?
In the full tutorial
- When to Reach for This