State Management in Distributed Low-Latency Stream Processors

Geeignet für: Masterarbeit

Apache Storm ist ein System zur Verarbeitung kontinuierlicher Datenströme (Distributed Stream Processor, DSP) mit besonders geringer Ende-zu-Ende-Latenz. Es verteilt nicht nur einzelne Prozesse einer verteilten Anwendung auf mehrere Maschinen in einem Clusterverbund, sondern startet abgestürzte Prozesse auch auf anderen Maschinen neu; um dieses Feature auch für zustandsbehaftete Anwendungen nutzbar zu machen, bietet Storm ein Checkpoint-basiertes State Management, welches den Zustand der einzelnen Prozesse periodisch festschreibt. Die Erstellung eines Checkpoint liegt jedoch auf dem kritischen Verarbeitungspfad eines Prozesses und verläuft obendrein synchron, sodass sie unter Umständen starke Auswirkungen auf die Latenz in der Verarbeitungspipeline hat.\ Ziel der Arbeit ist die Implementation und Evaluierung eines komplett asynchronen State Management in Storm.

Ziele:

  • Recherche geeigneter Algorithmen zur Bestimmung des globalen Systemzustands in einem verteilten System (siehe auch Vertiefungsliteratur unten) und insbesondere eine Analyse der Ansätze zum State Management der populärsten DSPs (etwa StormFlinkApexSamza oder Spark Streaming)
  • Entwurf und Implementierung einer latenzoptimierten State-Implementation in Storm, die möglichst wenige Einschränkungen bezüglich der Änderungsrate und Größe des Anwendungszustandes bietet und gleichzeitig bestehende Konsistenzgarantien erhält
  • Evaluation der Implementation und (quantitativer) Vergleich mit der Standardimplementation in Storm sowie dem State Management in und Flink oder Apex.

Einführungsliteratur:

Vertiefungsliteratur:

Kommentare

Kommentar hinterlassen

Die E-Mail Adresse wird nicht veröffentlicht. Benötigte Felder sind markiert *