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
Automated empirical optimizations of software and the ATLAS project
Clint Whaley, R., Petitet, A., & Dongarra, J. J. (2001) · Parallel Computing · doi:10.1016/s0167-8191(00)00087-9 · Cited by 1,317
DeWitt, D. J., & Gray, J. (1992) · Communications of the ACM · doi:10.1145/129888.129894 · Cited by 1,291
Database Systems: The Complete Book
García-Molina, H., Ullman, J. D., & Widom, J. (2001) · Cited by 1,266
The design of the borealis stream processing engine
Abadi, D. J., Ahmad, Y., Bałazińska, M., Cherniack, M., Hwang, J.-H., Lindner, W., Maskey, A. S., Rasin, A., Ryvkina, E., Tatbul, N., et al. (2005) · Cited by 1,255
The CQL continuous query language: semantic foundations and query execution
Arasu, A., Babu, S., & Widom, J. (2005) · The VLDB Journal · doi:10.1007/s00778-004-0147-z · Cited by 1,181
Buck, I., Foley, T., Horn, D. R., Sugerman, J., Fatahalian, K., Houston, M., & Hanrahan, P. (2004) · ACM Transactions on Graphics · doi:10.1145/1015706.1015800 · Cited by 1,163
StreamIt: A Language for Streaming Applications
Thies, W., Karczmarek, M., & Amarasinghe, S. P. (2002) · Lecture notes in computer science · doi:10.1007/3-540-45937-5_14 · Cited by 1,128
Chen, J., DeWitt, D. J., Tian, F., & Wang, Y. (2000) · ACM SIGMOD Record · doi:10.1145/335191.335432 · Cited by 1,022
Blumofe, R. D., Joerg, C. F., Kuszmaul, B. C., Leiserson, C. E., Randall, K. H., & Zhou, Y. (1995) · ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming · doi:10.1145/209936.209958 · Cited by 1,021
Lam, M. S. (2004) · ACM SIGPLAN Notices · doi:10.1145/989393.989420 · Cited by 889
High-performance complex event processing over streams
Wu, E., Diao, Y., & Rizvi, S. (2006) · Proceedings - ACM-SIGMOD International Conference on Management of Data · doi:10.1145/1142473.1142520 · Cited by 838
Welsh, M., Culler, D., & Brewer, E. (2001) · doi:10.1145/502034.502057 · Cited by 837
Avnur, R., & Hellerstein, J. M. (2000) · ACM SIGMOD Record · doi:10.1145/335191.335420 · Cited by 798
Condie, T., Conway, N., Alvaro, P., Hellerstein, J. M., Elmeleegy, K., & Sears, R. (2010) · doi:10.5555/1855711.1855732 · Cited by 751
Yu, Y., Isard, M., Fetterly, D., Budiu, M., Erlingsson, Ú., Gunda, P. K., & Currey, J. (2008) · doi:10.5555/1855741.1855742 · Cited by 703
Software pipelining: an effective scheduling technique for VLIW machines
Lam, M. S. (1988) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/53990.54022 · Cited by 682
The Gamma database machine project
DeWitt, D. J., Ghandeharizadeh, S., Schneider, D. A., Bricker, A., Hsiao, H.-I., & Rasmussen, R. (1990) · IEEE Transactions on Knowledge and Data Engineering · doi:10.1109/69.50905 · Cited by 671
Load Shedding in a Data Stream Manager
Tatbul, N., Çetintemel, U., Zdonik, S., Cherniack, M., & Stonebraker, M. R. (2003) · Elsevier eBooks · doi:10.1016/b978-012722442-8/50035-5 · Cited by 581
Exploiting coarse-grained task, data, and pipeline parallelism in stream programs
Gordon, M. I., Thies, W., & Amarasinghe, S. P. (2006) · International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS) · doi:10.1145/1168857.1168877 · Cited by 513
Advances in dataflow programming languages
Johnston, W. M., Hanna, J. R. P., & Millar, R. J. (2004) · ACM Computing Surveys · doi:10.1145/1013208.1013209 · Cited by 503
Chen, J., DeWitt, D. J., Tian, F., & Wang, Y. (2000) · ACM SIGMOD International Conference on Management of Data (SIGMOD) · doi:10.1145/342009.335432 · Cited by 481
Eliminating receive livelock in an interrupt-driven kernel
Mogul, J. C., & Ramakrishnan, K. K. (1997) · ACM Transactions on Computer Systems · doi:10.1145/263326.263335 · Cited by 457
Adaptive filters for continuous queries over distributed data streams
Olston, C., Jiang, J., & Widom, J. (2003) · ACM SIGMOD International Conference on Management of Data (SIGMOD) · doi:10.1145/872757.872825 · Cited by 448
Transparent process migration: Design alternatives and the Sprite implementation
Ousterhout, J. K., & Douglis, F. (n.d.) · NASA Technical Reports Server (NASA) · Cited by 446
Network-Aware Operator Placement for Stream-Processing Systems
Pietzuch, P. R., Ledlie, J., Shneidman, J., Roussopoulos, M., Welsh, M., & Seltzer, M. (2006) · IEEE International Conference on Data Engineering (ICDE) · doi:10.1109/icde.2006.105 · Cited by 432
Gedik, B., Andrade, H. C. M., Wu, K., Yu, P. S., & Doo, M. (2008) · ACM SIGMOD International Conference on Management of Data (SIGMOD) · doi:10.1145/1376616.1376729 · Cited by 421
Self-citationAvnur, R., & Hellerstein, J. M. (2000) · ACM SIGMOD International Conference on Management of Data (SIGMOD) · doi:10.1145/342009.335420 · Cited by 381
Morris, R., Kohler, E., Jannotti, J., & Kaashoek, M. F. (1999) · doi:10.1145/319151.319166 · Cited by 370
Encapsulation of parallelism in the Volcano query processing system
Graefe, G. (1990) · ACM SIGMOD International Conference on Management of Data (SIGMOD) · doi:10.1145/93597.98720 · Cited by 340
A stream compiler for communication-exposed architectures
Gordon, M. I., Thies, W., Karczmarek, M., Lin, J., Meli, A. S., Lamb, A. A., Leger, C., Wong, J., Hoffmann, H., Maze, D. Z., et al. (2002) · International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS) · doi:10.1145/605397.605428 · Cited by 337
Stephens, R. (1997) · Acta Informatica · doi:10.1007/s002360050095 · Cited by 331
Load shedding for aggregation queries over data streams
Babcock, B., Datar, M., & Motwani, R. (2004) · IEEE International Conference on Data Engineering (ICDE) · doi:10.1109/icde.2004.1320010 · Cited by 314
Implementing declarative overlays
Loo, B. T., Condie, T., Hellerstein, J. M., Maniatis, P., Roscoe, T., & Stoica, I. G. (2005) · ACM SIGOPS Operating Systems Review · doi:10.1145/1095809.1095818 · Cited by 292
Making paths explicit in the Scout operating system
Mosberger, D., & Peterson, L. (1996) · Operating Systems Design and Implementation · doi:10.1145/238721.238771 · Cited by 284
Automatic Thread Extraction with Decoupled Software Pipelining
Ottoni, G. D. L., Rangan, R., Stoler, A., & August, D. I. (2006) · IEEE/ACM International Symposium on Microarchitecture (MICRO) · doi:10.1109/micro.2005.13 · Cited by 274
Buck, I., Foley, T., Horn, D. R., Sugerman, J., Fatahalian, K., Houston, M., & Hanrahan, P. (2004) · ACM SIGGRAPH Conference (SIGGRAPH) · doi:10.1145/1186562.1015800 · Cited by 254
An accurate worst case timing analysis for RISC processors
Lim, S.-S., Bae, Y. H., Jang, G. T., Rhee, B.-D., Min, S. L., Park, C. Y., Shin, H., Park, K., Moon, S., & Kim, C. S. (1995) · IEEE Transactions on Software Engineering · doi:10.1109/32.392980 · Cited by 254
Operator Scheduling in a Data Stream Manager
Carney, D., Çetintemel, U., Rasin, A., Zdonik, S., Cherniack, M., & Stonebraker, M. (2003) · Elsevier eBooks · doi:10.1016/b978-012722442-8/50079-3 · Cited by 253
YFilter: efficient and scalable filtering of XML documents
Diao, Y., Fischer, P., Franklin, M. J. M., & To, R. (2003) · IEEE International Conference on Data Engineering (ICDE) · doi:10.1109/icde.2002.994748 · Cited by 248
Adaptive ordering of pipelined stream filters
Babu, S., Motwani, R., Munagala, K., Nishizawa, I., & Widom, J. (2004) · ACM SIGMOD International Conference on Management of Data (SIGMOD) · doi:10.1145/1007568.1007615 · Cited by 231
Dynamic Load Distribution in the Borealis Stream Processor
Xing, Y., Zdonik, S. B., & Hwang, J.-H. (2005) · IEEE International Conference on Data Engineering (ICDE) · doi:10.1109/icde.2005.53 · Cited by 229
Consistent Streaming Through Time: A Vision for Event Stream ProcessingPreprint
Barga, R., Goldstein, J., Ali, M., & Hong, M. (2006) · arXiv (Cornell University) · doi:10.48550/arxiv.cs/0612115 · Cited by 221
Highly available, fault-tolerant, parallel dataflows
Shah, M. A., Hellerstein, J. M., & Brewer, E. A. (2004) · ACM SIGMOD International Conference on Management of Data (SIGMOD) · doi:10.1145/1007568.1007662 · Cited by 204
Xiong, J., Johnson, J. R., Johnson, R. M., & Padua, D. (2001) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/378795.378860 · Cited by 191
Coutts, D., Leshchinskiy, R., & Stewart, D. (2007) · ACM SIGPLAN International Conference on Functional Programming (ICFP) · doi:10.1145/1291151.1291199 · Cited by 190
Thies, W., & Amarasinghe, S. P. (2010) · International Conference on Parallel Architectures and Compilation Techniques (PACT) · doi:10.1145/1854273.1854319 · Cited by 179
Arpaci-Dusseau, R. H., Anderson, E. J., Treuhaft, N., Culler, D., Hellerstein, J. M., Patterson, D. A., & Yelick, K. (1999) · doi:10.1145/301816.301823 · Cited by 176
Distributed aggregation for data-parallel computing
Yu, Y., Gunda, P. K., & Isard, M. (2009) · ACM SIGOPS Symposium on Operating Systems Principles (SOSP) · doi:10.1145/1629575.1629600 · Cited by 172
A comparison of empirical and model-driven optimization
Yotov, K., Li, X., Ren, G., Cibulskis, M., DEJONG, G. F., Garzarán, M. J., Padua, D., Pingali, K. K., Stodghill, P. V., & Wu, P. (2003) · ACM SIGPLAN Notices · doi:10.1145/780822.781140 · Cited by 165
Silberstein, A., Braynard, R. L., & Yang, J. (2006) · ACM SIGMOD International Conference on Management of Data (SIGMOD) · doi:10.1145/1142473.1142492 · Cited by 160
Towards a streaming SQL standard
Jain, N., Mishra, S., Srinivasan, A., Gehrke, J. E., Widom, J., Balakrishnan, H., Çetintemel, U., Cherniack, M., Tibbetts, R., & Zdonik, S. (2008) · Proceedings of the VLDB Endowment · doi:10.14778/1454159.1454179 · Cited by 159
Auerbach, J. S., Bacon, D. F., Cheng, P., & Rabbah, R. (2010) · Conference on Object-Oriented Programming Systems, Languages, and Applications · doi:10.1145/1869459.1869469 · Cited by 151
(2007) · IEEE/ACM International Symposium on Microarchitecture (MICRO) · doi:10.1109/micro.2007.7 · Cited by 144
Parallel-stage decoupled software pipelining
Raman, E., Ottoni, G. D. L., Raman, A., Bridges, M. J., & August, D. I. (2008) · Proceedings of the CGO/Proceedings of the ... CGO · doi:10.1145/1356058.1356074 · Cited by 140
Adaptive Control of Extreme-scale Stream Processing Systems
Amini, L. D., Jain, N., Sehgal, A., Silber, J., & Verscheure, O. (2006) · IEEE International Conference on Distributed Computing Systems (ICDCS) · doi:10.1109/icdcs.2006.13 · Cited by 138
SODA : An optimizing scheduler for large-scale stream-based distributed computer systems
Wolf, J. L., Bansal, N., Profile, S., Hildrum, K. W., Rajan, D., Wolf, J., Hildrum, K. W., Parekh, S. S., Wagle, R., Wu, K., et al. (2008) · Cited by 126
Elastic scaling of data parallel operators in stream processing
Schneider, S., Andrade, H. C. M., Gedik, B., Biem, A., & Wu, K. (2009) · IEEE International Parallel and Distributed Processing Symposium (IPDPS) · doi:10.1109/ipdps.2009.5161036 · Cited by 126
Self-citationIBM Streams Processing Language: Analyzing Big Data in motion
Hirzel, M. J., Andrade, H., Gedik, B., Jacques-Silva, G., Khandekar, R., Kumar, V. K., Mendell, M., Nasgaard, H., Schneider, S., Soulé, R., et al. (2013) · IBM Journal of Research and Development · doi:10.1147/jrd.2013.2243535 · Cited by 116
Self-citationSoftware Pipelined Execution of Stream Programs on GPUs
Udupa, A., Govindarajan, R., & Thazhuthaveetil, M. J. (2009) · Proceedings of the CGO/Proceedings of the ... CGO · doi:10.1109/cgo.2009.20 · Cited by 114
Implementing declarative overlays
Loo, B. T., Condie, T., Hellerstein, J. M., Maniatis, P., Roscoe, T., & Stoica, I. G. (2005) · ACM SIGOPS Symposium on Operating Systems Principles (SOSP) · doi:10.1145/1095810.1095818 · Cited by 113
Opening the black boxes in data flow optimization
Hueske, F., Peters, M., Sax, M. J., Rheinländer, A., Bergmann, R., Krettek, A., & Tzoumas, K. (2012) · Proceedings of the VLDB Endowment · doi:10.14778/2350229.2350244 · Cited by 112
Botan, I., Derakhshan, R., Dindar, N., Haas, L. M., Miller, R. J., & Tatbul, N. (2010) · Proceedings of the VLDB Endowment · doi:10.14778/1920841.1920874 · Cited by 108
Microsoft CEP server and online behavioral targeting
Ali, M. H., Gerea, C., Raman, B. S., Sezgin, B., Tarnavski, T., Verona, T., Wang, P., Zabback, P., Ananthanarayan, A., Kirilov, A., et al. (2009) · Proceedings of the VLDB Endowment · doi:10.14778/1687553.1687590 · Cited by 105
Riabov, A., Boillet, E., Feblowitz, M. D., Liu, Z., & Ranganathan, A. (2008) · International World Wide Web Conference (WWW) · doi:10.1145/1367497.1367602 · Cited by 101
Flextream: Adaptive Compilation of Streaming Applications for Heterogeneous Architectures
Hormati, A. H., Choi, Y., Kudlur, M., Rabbah, R., Mudge, T., & Mahlke, S. A. (2009) · International Conference on Parallel Architectures and Compilation Techniques (PACT) · doi:10.1109/pact.2009.39 · Cited by 96
COLA: Optimizing Stream Processing Applications via Graph Partitioning
Khandekar, R., Hildrum, K. W., Parekh, S. S., Rajan, D., Wolf, J. L., Wu, K., Andrade, H. C. M., & Gedik, B. (2009) · Lecture notes in computer science · doi:10.1007/978-3-642-10445-9_16 · Cited by 89
Self-citationA comparison of empirical and model-driven optimization
Yotov, K., Li, X., Ren, G., Cibulskis, M., DEJONG, G. F., Garzarán, M. J., Padua, D., Pingali, K. K., Stodghill, P. V., & Wu, P. (2003) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/781131.781140 · Cited by 87
Rinard, M., & Diniz, P. C. (1996) · ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) · doi:10.1145/231379.231390 · Cited by 79
Cache aware optimization of stream programs
Sermulins, J., Thies, W., Rabbah, R., & Amarasinghe, S. P. (2005) · ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems (LCTES) · doi:10.1145/1065910.1065927 · Cited by 76
A Complete and Efficient Algebraic Compiler for XQuery
Ré, C., Simèon, J., & Fernández, M. (2006) · IEEE International Conference on Data Engineering (ICDE) · doi:10.1109/icde.2006.6 · Cited by 72
Analysis of techniques to improve protocol processing latency
Mosberger, D., Peterson, L., Bridges, P. G., & O'Malley, S. W. (1996) · ACM SIGCOMM Conference (SIGCOMM) · doi:10.1145/248156.248164 · Cited by 71
Auto-parallelizing stateful distributed streaming applications
Schneider, S., Hirzel, M. J., Gedik, B., & Wu, K. (2012) · International Conference on Parallel Architectures and Compilation Techniques (PACT) · doi:10.1145/2370816.2370826 · Cited by 67
Self-citationA Performance Study of Event Processing Systems
Mendes, M. R. N., Bizarro, P., & Marques, P. (2009) · Lecture notes in computer science · doi:10.1007/978-3-642-10424-4_16 · Cited by 61
Speculative out-of-order event processing with software transaction memory
Brito, A., Fetzer, C. W., Sturzrehm, H., & Felber, P. A. (2008) · ACM International Conference on Distributed and Event-Based Systems (DEBS) · doi:10.1145/1385989.1386023 · Cited by 58
Run-time operator state spilling for memory intensive long-running queries
Liu, B., Zhu, Y., & Rundensteiner, E. A. (2006) · ACM SIGMOD International Conference on Management of Data (SIGMOD) · doi:10.1145/1142473.1142513 · Cited by 47
A Universal Calculus for Stream Processing Languages
Soulé, R., Hirzel, M. J., Grimm, R., Gedik, B., Andrade, H. C. M., Kumar, V., & Wu, K. (2010) · Lecture notes in computer science · doi:10.1007/978-3-642-11957-6_27 · Cited by 41
Self-citationAutopipelining for Data Stream Processing
Tang, Y., & Gedik, B. (2013) · IEEE Transactions on Parallel and Distributed Systems · doi:10.1109/tpds.2012.333 · Cited by 37
Self-citationCortes, C., Fisher, K. S., Pregibon, D., Rogers, A., & Frederick Smith, Y. (2004) · ACM Transactions on Programming Languages and Systems · doi:10.1145/973097.973100 · Cited by 27
Burchett, K., Cooper, G. H., & Krishnamurthi, S. (2007) · ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation (PEPM) · doi:10.1145/1244381.1244393 · Cited by 25
Hormati, A. H., Choi, Y., Woh, M., Kudlur, M., Rabbah, R., Mudge, T., & Mahlke, S. A. (2010) · ACM SIGARCH Computer Architecture News · doi:10.1145/1735970.1736053 · Cited by 25
Schneider, S., Hirzel, M. J., & Gedik, B. (2013) · ACM International Conference on Distributed and Event-Based Systems (DEBS) · doi:10.1145/2488222.2488268 · Cited by 24
Self-citationEfficient Construction of Compact Shedding Filters for Data Stream Processing
Gedik, B., Wu, K., & Yu, P. S. (2008) · IEEE International Conference on Data Engineering (ICDE) · doi:10.1109/icde.2008.4497448 · Cited by 20
Self-citationCache aware optimization of stream programs
Sermulins, J., Thies, W., Rabbah, R., & Amarasinghe, S. P. (2005) · ACM SIGPLAN Notices · doi:10.1145/1070891.1065927 · Cited by 20
Deadlock-avoidance for streaming applications with split-join structure: Two case studies
Li, P., Agrawal, K., Buhler, J. D., Chamberlain, R. D., & Lancaster, J. M. (2010) · IEEE International Conference on Application-specific Systems, Architectures and Processors (ASAP) · doi:10.1109/asap.2010.5540957 · Cited by 14
Hormati, A. H., Choi, Y., Woh, M., Kudlur, M., Rabbah, R., Mudge, T., & Mahlke, S. A. (2010) · International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS) · doi:10.1145/1736020.1736053 · Cited by 13
From a calculus to an execution environment for stream processing
Soulé, R., Hirzel, M. J., Gedik, B., & Grimm, R. (2012) · ACM International Conference on Distributed and Event-Based Systems (DEBS) · doi:10.1145/2335484.2335487 · Cited by 4
Self-citationAdding stream processing system flexibility to exploit low-overhead communication systems
Selo, P., Park, Y., Parekh, S. S., Venkatramani, C., Pyla, H. K., & Fang, Z. (2010) · doi:10.1109/whpcf.2010.5671828 · Cited by 3
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