Zum Inhalt springen

Apache Spark

Apache Spark ist ein Open-Source-Framework für Cluster-Computing, das schnelle, skalierbare Datenverarbeitung ermöglicht. Es verwendet In-Memory-Verarbeitung und Resilient Distributed Datasets (RDDs) für effiziente Analysen. Spark unterstützt Batch-, Streaming- und interaktive Verarbeitung und ist Teil des Hadoop-Ökosystems.

Spark entstand 2009 am AMPLab der University of California, Berkeley, als Alternative zu MapReduce. 2010 wurde es Open-Source veröffentlicht. Seit 2013 wird es von der Apache Software Foundation betreut und ist seit 2014 ein Top-Level-Projekt. Spark hat Hadoop in vielen Anwendungen ersetzt.

Spark basiert auf einem gerichteten azyklischen Graphen (DAG) für Aufgabenplanung und verwendet RDDs als Datenstruktur.

graph TD
    A[Spark Application] --> B[Driver Program]
    B --> C[Cluster Manager]
    C --> D[Worker Nodes]
    D --> E[Executors]
    E --> F[Tasks]
    F --> G[RDDs]

Der Kern bietet grundlegende Funktionen wie Scheduling und I/O. RDDs sind die zentrale Datenstruktur, die Transformationen und Aktionen unterstützt.

Ermöglicht SQL-Abfragen auf DataFrames, integriert mit Hive und unterstützt verschiedene Datenformate.

Verarbeitet Datenströme in Echtzeit, indem sie in Mikro-Batches unterteilt werden.

Bibliothek für maschinelles Lernen mit Algorithmen für Klassifikation, Regression und Clustering.

Framework für Graph-Verarbeitung und -Analyse.

Spark wird für Datenanalyse, maschinelles Lernen und Echtzeit-Streaming eingesetzt. Es ist schneller als Hadoop MapReduce durch In-Memory-Verarbeitung.

Vorteile sind Geschwindigkeit, Einfachheit und Unterstützung für mehrere Sprachen (Scala, Java, Python). Es integriert gut mit Hadoop.

Apache Spark. (2025). Spark Documentation. Retrieved from https://spark.apache.org/docs/

Wikipedia. (2024). Apache Spark. Retrieved from https://de.wikipedia.org/wiki/Apache_Spark