This thesis presents a benchmark suite for distributed stream processing systems to evaluate their performance across various applications and workloads. It addresses the need for comprehensive benchmarks, as existing ones cover only a limited range of applications, and proposes a framework to standardize application development and facilitate performance comparison. The research culminates in a validation of the benchmark through execution on multiple platforms, demonstrating its efficacy in aiding the selection of appropriate stream processing systems.