The DOI matches its Crossref record; 97 of the 97 references it cites were found in a registry or an index.
A catalog of stream processing optimizations
Open accessAbstract
Various research communities have independently arrived at stream processing as a programming model for efficient and parallel computing. These communities include digital signal processing, databases, operating systems, and complex event processing. Since each community faces applications with challenging performance requirements, each of them has developed some of the same optimizations, but often with conflicting terminology and unstated assumptions. This article presents a survey of optimizations for stream processing. It is aimed both at users who need to understand and guide the system’s optimizer and at implementers who need to make engineering tradeoffs. To consolidate terminology, this article is organized as a catalog, in a style similar to catalogs of design patterns or refactorings. To make assumptions explicit and help understand tradeoffs, each optimization is presented with its safety constraints (when does it preserve correctness?) and a profitability experiment (when does it improve performance?). We hope that this survey will help future streaming system builders to stand on the shoulders of giants from not just their own community.
Overview
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Integrity signals
Registry
Cites
Statistics
Verification
Claims the paper makes
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Claims other papers make about this one
Each is checked against this paper’s own text: does it say what the citing paper says it does?
The cited source says what the claim attributes to it.
In the citing paper
“Various research communities have independently arrived at stream processing as a programming model for efficient and parallel computing (Hirzel, Soulé, Schneider, Gedik, & Grimm, 2014).”
From Prescriptive analytics: Literature review and research challenges (2020) · cites this paper as Hirzel, Soulé, Schneider, Gedik, & Grimm, 2014
Self-check
Percentages, sums and reported differences re-computed from the paper’s own numbers.
The self-check needs the paper’s full text.
Citations
Cites
(1994) · Cited by 21,711
MapReduce: simplified data processing on large clusters
Dean, J., & Ghemawat, S. (2008) · Communications of the ACM · doi:10.1145/1327452.1327492 · Cited by 18,476
(1999) · Cited by 12,854
Refactoring: Improving the Design of Existing Code
Fowler, M. (2002) · Lecture notes in computer science · doi:10.1007/3-540-45672-4_31 · Cited by 5,615
Rete: A fast algorithm for the many pattern/many object pattern match problem
Forgy, C. L. (1982) · Artificial Intelligence · doi:10.1016/0004-3702(82)90020-0 · Cited by 2,639
Models and issues in data stream systems
Babcock, B., Babu, S., Datar, M., Motwani, R., & Widom, J. (2002) · ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems (PODS) · doi:10.1145/543613.543615 · Cited by 2,542
Kohler, E., Morris, R., Chen, B., Jannotti, J., & Kaashoek, M. F. (2000) · ACM Transactions on Computer Systems · doi:10.1145/354871.354874 · Cited by 2,437
Isard, M., Budiu, M., Yu, Y., Birrell, A. D., & Fetterly, D. (2007) · European Conference on Computer Systems · doi:10.1145/1272996.1273005 · Cited by 2,433
FFTW: an adaptive software architecture for the FFT
Frigo, M., & Johnson, S. G. (2002) · IEEE International Conference on Acoustics Speech and Signal Processing · doi:10.1109/icassp.1998.681704 · Cited by 1,803
Aurora: a new model and architecture for data stream management
Abadi, D. J., Carney, D., �etintemel, U., Cherniack, M., Convey, C., Lee, S., Stonebraker, M. R., Tatbul, N., & Zdonik, S. (2003) · The VLDB Journal · doi:10.1007/s00778-003-0095-z · Cited by 1,494
Flagged first, then by citations
Research works printed but not linked: 5
- 10.5555/977401.978165 · DOI
- 10.5555/1315451.1315523 · DOI
- 10.1002/spe.4380210802 · DOI
- Storm. 2013. Distributed and Fault-Tolerant Realtime Computation. Retrieved September 2013 from http://storm-project.net/. Storm. 2013. Distributed and Fault-Tolerant Realtime Computation. Retrieved September 2013 from http://storm-project.net/.
- 10.5555/1315451.1315479 · DOI
Cited by
Sorted by citations
Prescriptive analytics: Literature review and research challenges
Lepenioti, K., Bousdekis, A., Apostolou, D., & Mentzas, G. (2020) · International Journal of Information Management · doi:10.1016/j.ijinfomgt.2019.04.003 · Cited by 501
“Various research communities have independently arrived at stream processing as a programming model for efficient and parallel computing (Hirzel, Soulé, Schneider, Gedik, & Grimm, 2014).”
de Assunção, M. D., Veith, A. D. S., & Buyya, R. (2017) · Journal of Network and Computer Applications · doi:10.1016/j.jnca.2017.12.001 · Cited by 303
State management in Apache Flink®: Consistent stateful distributed stream processing
Carbone, P., Ewen, S., Fóra, G., Haridi, S., Richter, S., & Tzoumas, K. (2017) · Proceedings of the VLDB Endowment · doi:10.14778/3137765.3137777 · Cited by 285
Elastic Scaling for Data Stream Processing
Gedik, B., Schneider, S., Hirzel, M. J., & Wu, K. (2014) · IEEE Transactions on Parallel and Distributed Systems · doi:10.1109/tpds.2013.295 · Cited by 240
Self-citationA survey on the evolution of stream processing systems
Fragkoulis, M., Carbone, P., Kalavri, V., & Katsifodimos, A. (2024) · The VLDB Journal · doi:10.1007/s00778-023-00819-8 · Cited by 207
Metadata
- Authors
- Hirzel, M., Soulé, R., Schneider, S., Gedik, B., & Grimm, R.
- Affiliations
- IBM (United States) (US)
- Università della Svizzera italiana (CH)
- Bilkent University (TR)
- New York University (US)
- Venue
- ACM Computing Surveys
- Published
- 2014-03
- Volume
- 46
- Issue
- 4
- Pages
- 1-34
- ISSN
- 0360-0300 (ISSN-L)
- 1557-7341
- OpenAlex
- W2148222209
- Cited by
- 299
- References
- 97
- Citations by year
- 2026: 5 · 2025: 9 · 2024: 12 · 2023: 17 · 2022: 23 · 2021: 30 · 2020: 24 · 2019: 44 · 2018: 31 · 2017: 32 · 2016: 37 · 2015: 21 · 2014: 10
- FWCI
- 38.31
- Type
- journal article
- Language
- en
- Open access
- green
- hdl.handle.net
- Locations
- ACM Computing Surveys (publishedVersion)
- Bilkent University Institutional Repository (Bilkent University) (submittedVersion)
- Funders
- National Science Foundation (1162444, 1111698)
- Office of Naval Research (N00014-12-1-0757, N00014-12-1, N00014-12, N00014)
- Topics
- Physical Sciences › Computer Science › Information Systems › Advanced Database Systems and Queries
- Physical Sciences › Computer Science › Hardware and Architecture › Parallel Computing and Optimization Techniques
- Physical Sciences › Computer Science › Hardware and Architecture › Embedded Systems Design Techniques
- Keywords
- stream processing, stream processing systems, correctness preservation, performance trade-offs, parallel computing, digital signal processing, complex event processing
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review