Benchmarking Distributed Stream Data Processing Systems
arXiv:1802.08496 · doi:10.1109/ICDE.2018.00169
Abstract
The need for scalable and efficient stream analysis has led to the development of many open-source streaming data processing systems (SDPSs) with highly diverging capabilities and performance characteristics. While first initiatives try to compare the systems for simple workloads, there is a clear gap of detailed analyses of the systems' performance characteristics. In this paper, we propose a framework for benchmarking distributed stream processing engines. We use our suite to evaluate the performance of three widely used SDPSs in detail, namely Apache Storm, Apache Spark, and Apache Flink. Our evaluation focuses in particular on measuring the throughput and latency of windowed operations, which are the basic type of operations in stream analytics. For this benchmark, we design workloads based on real-life, industrial use-cases inspired by the online gaming industry. The contribution of our work is threefold. First, we give a definition of latency and throughput for stateful operators. Second, we carefully separate the system under test and driver, in order to correctly represent the open world model of typical stream processing deployments and can, therefore, measure system performance under realistic conditions. Third, we build the first benchmarking framework to define and test the sustainable performance of streaming systems. Our detailed evaluation highlights the individual characteristics and use-cases of each system.
Published at ICDE 2018
References in corpus (1)
Cited by in corpus (7)
- CERT: Finding Performance Issues in Database Systems Through the Lens of Cardinality Estimation
- Scalable and Reliable Multi-Dimensional Aggregation of Sensor Data Streams
- RMLStreamer-SISO: an RDF stream generator from streaming heterogeneous data
- ShuffleBench: A Benchmark for Large-Scale Data Shuffling Operations with Distributed Stream Processing Frameworks
- Fast Prototyping of Distributed Stream Processing Applications with stream2gym
- Determining Window Sizes using Species Estimation for Accurate Process Mining over Streams
- TensAIR: Real-Time Training of Neural Networks from Data-streams