EVALUATION
STREAMING
FRAMEWORKS
Apache Storm vs. Apache Spark Streaming
Vorstellung Apache Storm
Apache Storm
• Von Backtype entwickelt, von Twitter übernommen, nun
als Apache Projekt
• Definier...
Use Case Evaluierung Storm
• ADP Event aus HDFS einlesen und in Kafka einspielen
• Storm-Kafka an topic subscriben und jew...
Vorstellung Streaming – Spark Streaming
Spark Streaming ist eine API aus der Spark Framework Familie und
wird von Databrix...
Use Case Evaluierung Spark Streaming
• ADP Event aus HDFS einlesen und in Kafka einspielen
• Setup einer Application, so w...
Pros and Cons Spark Streaming
• Für Spark Streaming spricht:
• Umfangreiche API mit vielen Funktionen
• Teil der Spark Pla...
Pros and Cons - Storm
• Für Storm spricht:
• Extrem robust und erprobt
• Einfache Clusterverwaltung
• Einfache API
• Low -...
Nächste SlideShare
Wird geladen in …5
×

Eval Apache Storm vs. Spark Streaming - German

593 Aufrufe

Veröffentlicht am

A short overview of features, pros and cons of Apache Storm and Spark Streaming in German.

Eine kurze Übersicht über features, Pro und Kontra des Einsatzes von Apache Storm und Spark Streaming

Veröffentlicht in: Technologie
0 Kommentare
2 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
593
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
4
Aktionen
Geteilt
0
Downloads
9
Kommentare
0
Gefällt mir
2
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Eval Apache Storm vs. Spark Streaming - German

  1. 1. EVALUATION STREAMING FRAMEWORKS Apache Storm vs. Apache Spark Streaming
  2. 2. Vorstellung Apache Storm Apache Storm • Von Backtype entwickelt, von Twitter übernommen, nun als Apache Projekt • Definiert ein Netzwerk von Spouts (Streaming Quellen) und Bolts (Processing – Einheiten), die frei in Topologies kombinierbar und verkettbar sind. • Basiert auf Zookeeper, mit einem JobTracker (Nimbus) zur koordination und für fail over mediation. • Alternativ werden Resourcen über YARN in einer existierenden Hadoop Umgebung integriert • Stream – Verarbeitung ist „garantiert“ • Spouts (Quellen) sind typischerweise Queue – Systeme, für Kafka gibt es ein Implementierung
  3. 3. Use Case Evaluierung Storm • ADP Event aus HDFS einlesen und in Kafka einspielen • Storm-Kafka an topic subscriben und jeweils • Eine (klassische) Storm Topology die Events verarbeiten lassen und • Eine Trident Topology die Events verarbeiten lassen • Aufbau eines Cluster in AWS mit • Einem Master mit UI und Nimbus, sowie drei Worker • Zwei Worker Nodes mit jeweils drei Worker 440 Mio. Events aus HDFS in Storm eingespielt. Throughput bei 5600 events / sek (Limit bei Kafka Server / 100 Mbit/s interface) Abschuss von einer Node im laufenden Betrieb ohne Auswirkung auf die Verarbeitung, da dynamisches Rerouting
  4. 4. Vorstellung Streaming – Spark Streaming Spark Streaming ist eine API aus der Spark Framework Familie und wird von Databrix entwickelt. • Anders als Storm oder Samza arbeitet Spark mit dem Konzept von RDDs (resilient distributed data sets), gekapselte, ausführbare collections von Datensätzen, die parallelisierbar sind. • Bei RDDs wird grundsätzlich zwischen Transformationen (ähnlich wie map bei MR) und Aktionen (reduce bei MR) unterschieden. • Die Daten und Ihre Ausführung bilden dabei eine Einheit, die segmentiert wird und parallel ausgeführt wird. Die Ausführung ist grundsätzlich lazy, d.h. die Transformation wird erst dann ausgeführt, wenn dessen Ausgabe von einer folgenden Aktion benötigt wird. • Das ermöglich die dynamische Allokation von Ressourcen durch den Resource Manager, typischerweise YARN oder Mesos. • Spark Streaming ist eine Erweiterung von Spark, die es erlaubt Streams an RDDs anzudocken. Unter anderem wird hier Kafka unterstützt.
  5. 5. Use Case Evaluierung Spark Streaming • ADP Event aus HDFS einlesen und in Kafka einspielen • Setup einer Application, so wie bei Storm auch, die User- Agents zählt • Aufbau eines Cluster in AWS mit • Einem Master mit einem Worker • Zwei Worker Nodes mit jeweils einem Worker • Läuft nur mit Kafka 0.8! 440 Mio. Events aus HDFS in Spark einspielen. Throughput messen Abschuss von einer Node im laufenden Betrieb evaluieren
  6. 6. Pros and Cons Spark Streaming • Für Spark Streaming spricht: • Umfangreiche API mit vielen Funktionen • Teil der Spark Plattform, für Data Science sehr relevant (z.B. MLLib) • Integration in Hadoop und Akka (Bei CDH5 in der Distribution enthalten) • Dagegen spricht: • Die Java API ist absolut furchtbar, sinnvoll nur mit Scala einsetzbar • Läuft nur mit Kafka 0.8 • Verarbeitung nicht garantiert, Kafka messages werden bei failures nicht zurückgespult.
  7. 7. Pros and Cons - Storm • Für Storm spricht: • Extrem robust und erprobt • Einfache Clusterverwaltung • Einfache API • Low - level Kafka Anbindung • Only Once - Garantie mit Trident • Dagegen spricht: • Nicht integriert in Hadoop – Infrastruktur

×