Apache Spark ist ein parallel arbeitendes Open Source-Framework, das die schnelle Verarbeitung großer Datenmengen auf geclusterten Computern ermöglicht. Im Vergleich zu Hadoop kann Spark mit der In-Memory-Technologie bei bestimmten Anwendungsszenarien Daten um ein vielfaches schneller verarbeiten. Davon profitieren auch Pinterest- und Airbnb-Nutzer.
In-Memory-Verarbeitung für schnelle Datenabfragen
Sollen viele Operationen bei der Datenverarbeitung parallel durchgeführt werden, verlagert Spark die Jobs in den Arbeitsspeicher (In-Memory), um Zugriffe auf das Hadoop Distributed File System (HDFS), HBase, Apache Hive oder Cassandra gering zu halten. Visualisierungen, Analysen und Transaktionen können dadurch wesentlich schneller durchgeführt werden. Das betrifft insbesondere Anwendungen mit vielen Reduce-Schritten wie sie z.B. bei der Übersetzung von komplexen Queries oder im Business Intelligence-Umfeld an der Tagesordnung sind.Datenverarbeitung aus unterschiedlichen Distributionen
Insbesondere im Vergleich zur Hadoop-Komponente MapReduce schneidet Spark wesentlich besser ab. Es ist schnell, flexibel und kann sowohl für Batch-orientierte als auch für iterative oder Streaming-Analysen genutzt werden. Letzteres macht Spark insbesondere für Echtzeit-Analysen interessant: Spark muss nicht notwendigerweise auf dem Hadoop-File-System aufsetzen und kann daher zur Hochgeschwindigkeitsverarbeitung von Daten aus unterschiedlichen Quellen genutzt werden – das beschleunigt die Leistung datenabhängiger Anwendungen dramatisch.Vorteile von Spark
- höhere Produktivität und geringere Betriebskosten;
- Echtzeitanalysen durch In-Memory-Bearbeitung der Daten;
- Schnelle und fundierte Entscheidungen können getroffen werden;
- SQL-ähnliche Abfragen sind möglich, wodurch keine spezialisierten Kenntnisse im Unternehmen nötig sind.
Einfache Anwendungsentwicklung
Spark liefert eine eigene Abfragesprache, die SparkSQL. Sie ermöglicht SQL-ähnliche Abfragen von Daten, wodurch die Grenzen zwischen Resilient Distributed Datasets (RDDs) und relationalen Datenbanken verschwimmen. Das macht es für Entwickler leichter, SQL-Befehle, die externe Daten mit komplexen Analysen kombinieren, in einer Applikation zu programmieren. Mit Hilfe von Spark serviert zum Beispiel der Visual-Bookmarking-Dienst Pinterest seinen Nutzern relevante Fotos oder ermittelt Airbnb Preise für seine Privatvermietungen.
Diese Artikel könnten Sie auch interessieren:
- 10 Big Data-Technologien, die Sie kennen sollten
- Apache Hadoop – ein bewährtes Open Source-Framework
- Apache Hive – das Data Warehouse für Hadoop
- Cloudera Impala – die Lösung für Echtzeitabfragen
- MongoDB – Die Datenbank für alle Fälle
- Pentaho – Flexible Business Intelligence-Plattform
- Infobright – MySQL-Engine mit effektiver Datenkompression
- Splunk – Big Data vereinfachen
- Hadoop Yarn – Big Data beschleunigen
- Apache Storm – Big Data-Analyse auf Echtzeitbasis