Hasso-Plattner-Institut25 Jahre HPI
Hasso-Plattner-Institut25 Jahre HPI
Login
 

Günter Hesse

"A Benchmark for Enterprise Stream Processing Architectures"

Data Stream Processing Systems (DSPSs) sind eine Schlüsseltechnologie, um kontinuierlich generierte Daten, wie beispielsweise Sensormessungen, in Unternehmensanwendungen zu integrieren. Die durch DSPSs ermöglichte permanente Analyse von Datenströmen kann dabei zur Überwachung von Produktionsprozessen genutzt werden, um möglichst zeitnah auf ungewollte Veränderungen zu reagieren. Darüber hinaus filtern, sampeln und aggregieren DSPSs einkommende Daten, was die Datengröße reduziert und so auch etwaige Kosten für die Datenspeicherung.

Steigende Datenvolumen haben in den letzten Jahren den Bedarf für performante DSPSs steigen lassen, was zur Entwicklung neuer DSPSs führte. Während eine große Auswahl an verfügbaren Systemen generell gut für Nutzer ist, stellt es potentielle Anwender auch vor die Herausforderung, das für aktuelle und zukünftige Anforderungen passendste DSPS zu identifizieren. Es ist wichtig, eine Lösung für diese Herausforderung zu haben, da das Austauschen von einem DSPS zu teuren Anpassungen oder Neuentwicklungen der darauf laufenden Anwendungen erfordert, falls für deren Entwicklung keine Abstraktionsschicht verwendet wurde. Das quantitative Vergleichen von DSPSs ist allerdings eine schwierige Aufgabe. Existierende Benchmarks decken nicht alle Kernfunktionalitäten von DSPSs ab und haben keinen oder unzureichenden Tool-Support, was eine objektive Ergebnisberechnung hinsichtlich der Performanz erschwert. Zudem beinhaltet kein Benchmark die Integration von Streamingdaten und strukturierten Geschäftsdaten, was ein besonders für Unternehmen relevantes Szenario ist.

Diese Dissertation stellt ESPBench vor, einen neuen Benchmark für Stream Processing-Szenarien im Unternehmenskontext. Der geschäftliche Kontext wird dabei durch die Verbindung von Streamingdaten und Geschäftsdaten dargestellt. Das Design von ESPBench repräsentiert Szenarien der realen Welt, stellt die objektive Berechnung von Benchmarkergebnissen sicher und erlaubt das Skalieren über Datencharakteristiken. Das entwickelte Toolkit des Benchmarks stellt wichtige Funktionalitäten bereit, wie beispielsweise die Automatisierung den kompletten Benchmarkprozesses sowie die Überprüfung der Abfrageergebnisse hinsichtlich ihrer Korrektheit. Um ESPBench zu validieren und die Anwendung weiter zu vereinfachen, haben wir eine Beispielimplementierung der Queries veröffentlicht. Die Implementierung haben wir mithilfe des in Industrie und Wissenschaft eingesetzten Softwareentwicklungsbaukastens Apache Beam durchgeführt, der es ermöglicht, entwickelte Anwendungen auf allen unterstützten DSPSs auszuführen. Den Einfluss auf die Performanz des Verwendens von Apache Beam wird dabei ebenfalls in dieser Arbeit untersucht. Weiterhin nutzen wir die veröffentlichte Beispielimplementierung der Queries um drei moderne DSPSs mit ESPBench zu untersuchen: Apache Flink, Apache Spark Streaming und Hazelcast Jet. Der Ergebnisse der Studie verdeutlichen die Funktionsfähigkeit von ESPBench und dessen Toolkit. ESPBench befähigt Performanzcharakteristiken von DSPSs zu quantifizieren und Unterschiede zwischen Systemen aufzuzeigen.

Der in dieser Dissertation vorgestellte Benchmark erfüllt alle Anforderungen, um in Stream Processing-Szenarien im Unternehmenskontext eingesetzt zu werden und stellt somit eine Verbesserung der aktuellen Situation dar.