Everything is connected: How watermarking, scaling, and exactly once impact one another in Pravega
summary
Pravega implements a Flink source/sink connector that ties stream cuts and a reader group to Flink checkpoints so watermarks only advance when transactions commit; watermark objects are triples (lower time, upper time, stream cut). Scaling (dynamic segment splits/merges) changes parallelism and forces checkpoint, transaction and watermark coordination. The connector uses Flink checkpoints to trigger Pravega checkpoints and commits transactions for exactly-once via transactions. Demo ingests 50 files (0–49); watermark reaches 49, showing it works.
AI-written summary · about
chapters (30)
- 0:00Intro
- 0:55Pravega: Storage for data streams
- 2:43Landscape
- 6:02Drone video streams + telemetry
- 8:15Data streams: Paralelism
- 8:44Data streams: Workload variations
- 9:33Data streams: Unbounded
- 10:26Data streams: Read scalability
- 10:58Data stream: Cloud native, storage primitive
- 11:53The recipe for effective stream processing
- 14:33Low watermark
- 16:10Global order
- 17:19Tracking source position
- 18:19Time windows: Accuracy
- 18:38Upon crashes
- 20:34Checkpointing
- 21:04Checkpoint complicates sinks
- 22:09Scaling and rebalancing
- 25:01StreamCuts
- 25:36Watermarking (writer side)
- 27:21Watermarking (reader side)
- 27:56Connectors
- 28:13Reader Groups
- 28:57Pravega time windows
- 30:04Watermarks
- 30:27With a Pravega reader source
- 30:54Upon a checkpoint
- 31:31Upon a Flink checkpoint
- 32:31Exactly once with Transactions
- 34:27Demo setup
related talks
15mStreaming, Fast and Slow: Mitigating Watermark Skew in Large, Stateful Jobs
26m“Hit me, baby, just one time” – Building End-to-End Exactly-Once Apps w/ Flink
38mStreaming Fast and Slow
34mA journey of scaling high-volume low-latency stateful processing
42mApache Beam: A Unified Model for...
28mA look at Flink’s internal data structures & algorithms for efficient checkpointing
37mKeynote | Flink Ahead: What Comes After Unified Batch & Streaming?
43mStream Processing and Applications in the Modern Age
