Statistical benchmarking of distributed computing environments in real-time processing
Arokivi, Jere (2025)
Diplomityö
Arokivi, Jere
2025
School of Engineering Science, Laskennallinen tekniikka
Kaikki oikeudet pidätetään.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe20251219122403
https://urn.fi/URN:NBN:fi-fe20251219122403
Tiivistelmä
Real-Time processing has become a critical part of modern data infrastructure, impacted by the rapid increase in continuous high-volume data sources. While the existing benchmarks compare different distributed stream processing frameworks on different hardware, there is limited empirical guidance on how architectural choices in production pipelines affect streaming performance.
This thesis investigates how different cloud cluster configurations impact the performance of Apache Spark Structured Streaming in Databricks platform. Seven cluster configurations are benchmarked under three distinct streaming workloads: stateless transformations, stateful aggregations, and stateful joins across different load levels.
The results reveal that there is clear separation between stateless and stateful workloads, where stateless operations exhibit negligible sensitivity to configuration changes, while stateful operations show large and consistent effects across all tested dimensions. These findings provide empirical guidance for configuring clusters for streaming workloads. Reaaliaikainen tietojenkäsittely on noussut keskeiseksi osaksi nykyaikaista datainfrastruktuuria jatkuvien datalähteiden nopean kasvun myötä. Vaikka olemassa olevat vertailut vertailevat eri hajautettuja suoratoistojärjestelmiä erilaisilla laitteistoilla, empiiristä ohjeistusta tuotantoympäristöjen arkkitehtuurivalintojen vaikutuksesta suoratoistosuorituskykyyn on saatavilla rajoitetusti.
Tässä opinnäytetyössä selvitetään, miten erilaiset pilviympäristöklusterit vaikuttavat Apache Spark Structured Streaming -järjestelmän suorituskykyyn Databricks-alustalla. Seitsemää klusterikonfiguraatiota vertaillaan kolmella erityyppisellä suoratoistotyökuormalla: tilattomilla toisistaan riippumattomilla muunnoksilla, tilaa ylläpitävillä aggregoinneilla ja suoratoistodatan rikastuksella eri kuormitustasoilla.
Tulokset osoittavat selkeän eron tilattomien ja tilallisten työkuormien välillä: tilattomat operaatiot ovat lähes riippumattomia konfiguraatiomuutoksista, kun taas tilalliset operaatiot osoittavat suuria ja johdonmukaisia vaikutuksia kaikilla testatuilla osa-alueilla.
Nämä löydökset tarjoavat empiirisiä ohjeistusta klusterien konfigurointiin suoratoistotyökuormille.
This thesis investigates how different cloud cluster configurations impact the performance of Apache Spark Structured Streaming in Databricks platform. Seven cluster configurations are benchmarked under three distinct streaming workloads: stateless transformations, stateful aggregations, and stateful joins across different load levels.
The results reveal that there is clear separation between stateless and stateful workloads, where stateless operations exhibit negligible sensitivity to configuration changes, while stateful operations show large and consistent effects across all tested dimensions. These findings provide empirical guidance for configuring clusters for streaming workloads.
Tässä opinnäytetyössä selvitetään, miten erilaiset pilviympäristöklusterit vaikuttavat Apache Spark Structured Streaming -järjestelmän suorituskykyyn Databricks-alustalla. Seitsemää klusterikonfiguraatiota vertaillaan kolmella erityyppisellä suoratoistotyökuormalla: tilattomilla toisistaan riippumattomilla muunnoksilla, tilaa ylläpitävillä aggregoinneilla ja suoratoistodatan rikastuksella eri kuormitustasoilla.
Tulokset osoittavat selkeän eron tilattomien ja tilallisten työkuormien välillä: tilattomat operaatiot ovat lähes riippumattomia konfiguraatiomuutoksista, kun taas tilalliset operaatiot osoittavat suuria ja johdonmukaisia vaikutuksia kaikilla testatuilla osa-alueilla.
Nämä löydökset tarjoavat empiirisiä ohjeistusta klusterien konfigurointiin suoratoistotyökuormille.
