Real-Time
Analytics
mit Spark
und Cassandra
WidasConcepts Unternehmensberatung GmbH Ÿ Maybachstraße 2 Ÿ 71299 Wimsheim Ÿ...
REAL-TIME
ANALYTICS?
3
© WidasConcepts
Real-Time Analytics?
4
© WidasConcepts
Real-Time Analytics mit Spark und Cassandra
CASSANDRA
6
© WidasConcepts
Cassandra
Vorteile Cassandra: massiv skalierbare verteilte Datenbank
CAP frei einstellbar, für Analytics...
7
© WidasConcepts
Cassandra – Ring Struktur
Jeder Knoten in Cassandra ist äquivalent ansprechbar
Konfigurierbare Replikati...
8
© WidasConcepts
  „Can‘t Fail, Must Scale“ –System
  Datenreplikation sichert Verfügbarkeit
  Knotenausfall wird automat...
9
© WidasConcepts
Skalierbarkeit Cassandra im Vergleich
Quelle: Planet Cassandra
Anzahl Operationen (Read/Write) pro Sec –...
SPARK
11
© WidasConcepts
Spark
Kernelemente
Verarbeitung im DAG (Directed Acyclic Graph)
Resilent Distributed Datasets
Scala
lok...
12
© WidasConcepts
Spark - RDD
Resilent Distributed Datasets
immutable
partitioned
logical collection of records
rebuildab...
13
© WidasConcepts
Spark – RDD – Transformationen und Aktionen (parallel)
Transformationen
map
filter
groupByKey
join
…
Ak...
14
© WidasConcepts
Spark – RDD – Resilent
Resilent Distributed Datasets
speichern ihre Herkunft (Lineage)
damit kann jeder...
15
© WidasConcepts
Spark Performanz im Vergleich
Logistic Regression
127	
  s	
  /	
  iteration	
  
first	
  iteration	
  1...
16
© WidasConcepts
Spark Stack
Spark	
  
Spark	
  
Streaming	
  
real-­‐time	
  
	
  
	
  
	
  
Verarbeitung	
  
von	
  Da...
Integration
Spark &
Cassandra
18
© WidasConcepts
Integration – Spark & Cassandra
mit Spark-Cassandra Connector
Cassandra Tabellen sind als RDDs verfügba...
19
© WidasConcepts
Vorteile der Integration zwischen Spark und Cassandra
Daten Lokalität, Token-Aware
Spark RDDs auf In Me...
Spark
Streaming
21
© WidasConcepts
Spark Streaming
Spark	
  
Spark	
  
Streaming	
  
Batches	
  
Datenstrom	
  
Ergebnisse	
  
22
© WidasConcepts
Spark Streaming
Integrierbar mit Cassandra/Spark Treiber
Micro Batches (1 Sek), Discretized Streams
Exa...
Umfeld
24
© WidasConcepts
Weiterentwicklungen im Spark Umfeld
SparkR, PySpark
Spark Integration in R
lapply Implementierung
kann ...
In Zukunft ?
26
© WidasConcepts
Trennung wirklich „noch“ notwendig ?
27
© WidasConcepts
Ist das nicht ein zu „großer“ Toolstack?
28
© WidasConcepts
Vielleicht etwas einfacher?
29
© WidasConcepts
Die Lösung für Analytics? (mit etwas HDFS)
WidasConcepts
HighEnd-Technology requires HighEnd-Competence
(Wir beraten Sie gerne
WidasConcepts GmbH
Maybachstraße 2
712...
Nächste SlideShare
Wird geladen in …5
×

Real-Time-Analytics mit Spark und Cassandra

658 Aufrufe

Veröffentlicht am

Real-Time-Analytics mit Spark und Cassandra.

Eine konzeptionelle Übersicht zur Integration, den Hintergründen als auch Vorteilen einer Kombination zwischen Spark und Cassandra.

Vortrag am 6ten OSBI Workshop 05.03.2015 in Offenburg.

Veröffentlicht in: Daten & Analysen
0 Kommentare
3 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

Keine Downloads
Aufrufe
Aufrufe insgesamt
658
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
8
Aktionen
Geteilt
0
Downloads
5
Kommentare
0
Gefällt mir
3
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Real-Time-Analytics mit Spark und Cassandra

  1. 1. Real-Time Analytics mit Spark und Cassandra WidasConcepts Unternehmensberatung GmbH Ÿ Maybachstraße 2 Ÿ 71299 Wimsheim Ÿ http://www.widas.de im März 2015 OSBI – Workshop http://www.osbi-workshop.de/
  2. 2. REAL-TIME ANALYTICS?
  3. 3. 3 © WidasConcepts Real-Time Analytics?
  4. 4. 4 © WidasConcepts Real-Time Analytics mit Spark und Cassandra
  5. 5. CASSANDRA
  6. 6. 6 © WidasConcepts Cassandra Vorteile Cassandra: massiv skalierbare verteilte Datenbank CAP frei einstellbar, für Analytics: AP Shared Nothing, Peer to Peer KKV – Wide Columnar/Partitions Zeitreihen optimierte Datenmodelle In Memory Tabellen Daten-Lokalität mit Wide Partitions 1 2 3 4 5 6
  7. 7. 7 © WidasConcepts Cassandra – Ring Struktur Jeder Knoten in Cassandra ist äquivalent ansprechbar Konfigurierbare Replikation (lokal, DC-weise) 1 2 34 5 Client
  8. 8. 8 © WidasConcepts   „Can‘t Fail, Must Scale“ –System   Datenreplikation sichert Verfügbarkeit   Knotenausfall wird automatisch behandelt Verfügbarkeit 1 2 34 5 Client
  9. 9. 9 © WidasConcepts Skalierbarkeit Cassandra im Vergleich Quelle: Planet Cassandra Anzahl Operationen (Read/Write) pro Sec – Anzahl Knoten
  10. 10. SPARK
  11. 11. 11 © WidasConcepts Spark Kernelemente Verarbeitung im DAG (Directed Acyclic Graph) Resilent Distributed Datasets Scala lokale JVM Prozesse auf den Knoten parallele Transformationen/Aktionen auf RDDs Operationen: map, filter, groupBy … Aktionen: count, collect, save … 1 2 3 4 5 6
  12. 12. 12 © WidasConcepts Spark - RDD Resilent Distributed Datasets immutable partitioned logical collection of records rebuildable materialized in memory cached for future reuse 1 2 3 4 5 6
  13. 13. 13 © WidasConcepts Spark – RDD – Transformationen und Aktionen (parallel) Transformationen map filter groupByKey join … Aktionen reduce collect count lookupKey …
  14. 14. 14 © WidasConcepts Spark – RDD – Resilent Resilent Distributed Datasets speichern ihre Herkunft (Lineage) damit kann jederzeit bei Ausfall die entsprechende Partition der RDD neu aufgebaut werden HdfsRDD path: hdfs://… FilteredRDD func: contains(...) MappedRDD func: split(…) CachedRDD
  15. 15. 15 © WidasConcepts Spark Performanz im Vergleich Logistic Regression 127  s  /  iteration   first  iteration  174  s   further  iterations  6  s   Quelle: University of California, Berkeley
  16. 16. 16 © WidasConcepts Spark Stack Spark   Spark   Streaming   real-­‐time         Verarbeitung   von  Daten  in   “micro”   Batches   Spark   SQL             HiveQL   kompatibel   MLLib   machine   learning         Classification   Clustering   Regressing   col.  Filtering     GraphX         spez.  RDDs   Operationen   PageRank   SVD++  
  17. 17. Integration Spark & Cassandra
  18. 18. 18 © WidasConcepts Integration – Spark & Cassandra mit Spark-Cassandra Connector Cassandra Tabellen sind als RDDs verfügbar auf jedem Cassandra Knoten wird ein Spark Executor eingesetzt 1 2 34 5
  19. 19. 19 © WidasConcepts Vorteile der Integration zwischen Spark und Cassandra Daten Lokalität, Token-Aware Spark RDDs auf In Memory C* Tabellen SQL auf Cassandra (Joins!) Datenbank-basierte Filter in Spark Spark Streaming wird unterstützt Beide Richtungen: Read and Write 1 2 3 4 5 6
  20. 20. Spark Streaming
  21. 21. 21 © WidasConcepts Spark Streaming Spark   Spark   Streaming   Batches   Datenstrom   Ergebnisse  
  22. 22. 22 © WidasConcepts Spark Streaming Integrierbar mit Cassandra/Spark Treiber Micro Batches (1 Sek), Discretized Streams Exactly Once Semantik RDD Funktionalität 1 2 3 4 Integration diverser MQ (z.B. Kafka)5
  23. 23. Umfeld
  24. 24. 24 © WidasConcepts Weiterentwicklungen im Spark Umfeld SparkR, PySpark Spark Integration in R lapply Implementierung kann in Closures in R verwendet werden 1 2 3 4 Interaktives R mit Spark möglich5 auf Daten in Cassandra6
  25. 25. In Zukunft ?
  26. 26. 26 © WidasConcepts Trennung wirklich „noch“ notwendig ?
  27. 27. 27 © WidasConcepts Ist das nicht ein zu „großer“ Toolstack?
  28. 28. 28 © WidasConcepts Vielleicht etwas einfacher?
  29. 29. 29 © WidasConcepts Die Lösung für Analytics? (mit etwas HDFS)
  30. 30. WidasConcepts HighEnd-Technology requires HighEnd-Competence (Wir beraten Sie gerne WidasConcepts GmbH Maybachstraße 2 71299 Wimsheim www.widas.de 30 Dieses Dokument wurde von WidasConcepts erstellt. Die Verteilung, Zitierung und Vervielfältigung – auch auszugsweise – zum Zwecke der Weitergabe an Dritte ist nur mit vorheriger schriftlicher Zustimmung von WidasConcepts gestattet. This presentation was created by WidasConcepts. Distribution, citation, copying - completely or in extracts – for transfer purposes, is only permitted with prior written agreement. These abstracts and graphics were deployed by WidasConcepts within the scope of a presentation. It is no complete documentation of this event. Thomas Mann, Solution Architect Telefon: +49 (7044) 95103 – 100 Mobile: +49 162 259 56 90 Mail: thomas.mann@widas.de

×