Stream processing with dependency-guided synchronization
Konstantinos Kallas, Filip Niksic, Caleb Stanford, Rajeev Alur
Abstract
Real-time data processing applications with low latency requirements have led to the increasing popularity of stream processing systems. While such systems offer convenient APIs that can be used to achieve data parallelism automatically, they offer limited support for computations that require synchronization between parallel nodes. In this paper, we propose dependency-guided synchronization (DGS), an alternative programming model for stateful streaming computations with complex synchronization requirements. In the proposed model, the input is viewed as partially ordered, and the program consists of a set of parallelization constructs which are applied to decompose the partial order and process events independently. Our programming model maps to an execution model called synchronization plans which supports synchronization between parallel nodes. Our evaluation shows that APIs offered by two widely used systems---Flink and Timely Dataflow---cannot suitably expose parallelism in some representative applications. In contrast, DGS enables implementations with scalable performance, the resulting synchronization plans offer throughput improvements when implemented manually in existing systems, and the programming overhead is small compared to writing sequential code.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 5913b0cb-59d5-42ea-8768-d3dcf23d3c0fCited by top-tier papers2
- A Robust Theory of Series Parallel GraphsRajeev Alur, Caleb Stanford, Christopher WatsonPOPL 2023 · 8 citations
- Stream TypesJoseph W. Cutler, Christopher Watson, Emeka Nkurumeh, Phillip Hilliard et al.PLDI 2024 · 7 citations
Builds on2
- Move Fast and Meet Deadlines: Fine-grained Real-time Stream Processing with CameoLe Xu, Shivaram Venkataraman, Indranil Gupta, Luo Mai et al.NSDI 2021 · 38 citations
- DiffStream: differential output testing for stream processing programsKonstantinos Kallas, Filip Niksic, Caleb Stanford, Rajeev AlurOOPSLA 2020 · 18 citations
Related papers
- Learning from the Past: Adaptive Parallelism Tuning for Stream Processing SystemsYuxing Han, Lixiang Chen, Haoyu Wang, Zhanghao Chen et al.ICDE 2025 · 2 citations
- DZiG: sparsity-aware incremental processing of streaming graphsMugilan Mariappan, Joanna Che, Keval VoraEuroSys 2021 · 47 citations
- Flo: A Semantic Foundation for Progressive Stream ProcessingShadaj Laddad, Alvin Cheung, Joseph M. Hellerstein, Mae MilanoPOPL 2025 · 3 citations
- DecoPa: Query Decomposition for Parallel Complex Event ProcessingSamira Akili, Steven Purtzel, Matthias WeidlichSIGMOD 2024 · 8 citations
- Meces: Latency-efficient Rescaling via Prioritized State Migration for Stateful Distributed Stream Processing SystemsRong Gu, Han Yin, Weichang Zhong, Chunfeng Yuan et al.USENIX ATC 2022 · 22 citations
