Definition

Was ist Spark?

| Autor / Redakteur: Stefan Luber / Nico Litzel

(Bild: © aga7ta - stock.adobe.com)

Bei Apache Spark handelt es sich um ein Framework, das unter Open-Source-Lizenz öffentlich verfügbar ist. Es ist ein Top Level Project der Apache Software Foundation und entstand ursprünglich aus einem Forschungsprojekt an der University of California in Berkeley.

Spark ermöglicht es, Datenabfragen auf große Datenmengen aus unterschiedlichen Quellen in hoher Geschwindigkeit und guter Performance auszuführen. Hierfür nutzt das Framework eine verteilte Architektur und Cluster Computing. Viele große Unternehmen unterstützen die Apache Software Foundation und treiben die Entwicklung von Spark weiter voran.

Die Architektur und die verschiedenen Komponenten von Apache Spark

Die Architektur von Spark besteht aus folgenden Einzelkomponenten, die jeweils für spezifische Aufgaben im Gesamtverbund verantwortlich sind:

  • Spark Core
  • Spark SQL
  • Spark Streaming
  • MLlib Machine Learning Library
  • GraphX

Der Spark-Core stellt die Basis des kompletten Systems dar. Er sorgt für die Bereitstellung grundlegender Funktionalitäten, die Verteilung von Aufgaben sowie für das Scheduling und die Steuerung der Ein- und Ausgabeprozesse. Die Datenstruktur im Spark Core basiert auf sogenannten RDDs (Resilient Distributed Datasets). Es handelt sich dabei um eine bestimmte Art von Datenbeständen, die sich über mehrere Rechner verteilen lassen. RDDs stammen entweder aus externen Datenquellen oder entstehen aus internen Datenverarbeitungs- und Filterfunktionen.

Mithilfe von Spark SQL wird es möglich, RDDs so zu wandeln, dass sich SQL-Anfragen ausführen lassen. Hierfür erzeugt Spark SQL aus den RDDs Data Frames als temporäre Tabellen.

Die Aufgabe von Spark Streaming besteht darin, kontinuierliche Datenströme zu verarbeiten. Hierfür entstehen aus den Datenströmen einzelne Pakete, auf denen Datenaktionen ausführbar werden.

Die MLlib Machine Learning Library macht Funktionen im Apache Spark Framework verfügbar, mit denen sich die für das Machine Learning benötigten Algorithmen bedienen lassen. Das verteilte Framework zur Berechnung von Graphen stellt die GraphX-Komponente zur Verfügung.

Die Besonderheiten von Spark

Da Spark darauf ausgelegt ist, die Daten dynamisch im Arbeitsspeicher des Server-Clusters vorzuhalten und direkt dort zu verarbeiten, arbeitet das Framework besonders schnell. In Kombination mit der Parallelisierung von Arbeitsschritten erreicht Apache Spark gegenüber Systemen, deren Datenvorhaltung auf Festplatten oder SSD-Speicher basieren, eine exzellente Performance. Mit Spark können Daten im Tera- und Petabereich analysiert werden. Hierfür unterstützt das System große Cluster bestehend aus einer Vielzahl virtueller oder physischer Server. Durch Skalierung der Spark-Cluster kann die Leistungsfähigkeit fast beliebig erweitert werden.

Eine weitere Stärke des Apache Spark Frameworks ist die Bereitstellung eines äußerst leistungsfähigen Frameworks für das Maschine Learning. Dank der Möglichkeit, große Datenmengen schnell und parallelisiert zu verarbeiten und viele iterative Schleifen binnen kürzester Zeit durchzuführen, werden aufwendige Algorithmen für maschinenbasiertes Lernen optimal unterstützt.

Mögliche Anwendungsbereiche des Frameworks

Apache Spark bietet sich aufgrund seiner Schnelligkeit und der Vielfalt an Möglichkeiten, große Datenmengen aus den unterschiedlichsten Quellen zu verarbeiten, für zahlreiche Anwendungen im Big-Data-Umfeld an. Mittlerweile ist Apache Spark eine etablierte Big-Data-Technologie und wird von vielen großen Unternehmen eingesetzt. Wichtige Anwendungsbereiche von Apache Spark sind:

  • Integration und Zusammenführung von Daten aus verschiedenen Quellen und Systemen,
  • interaktive Analysen von großen Datenmengen,
  • Analyse von Datenströmen in Echtzeit sowie
  • maschinelles Lernen.

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

Mit Apache Zeppelin Daten analysieren

Interaktives Notizbuch für Big Data

Mit Apache Zeppelin Daten analysieren

Das Apache-Toplevel-Projekt Zeppelin bietet ein Notizbuch für Daten aus anderen Systemen, mit denen Anwender diese effektiv analysieren können. Zeppelin arbeitet dazu eng mit Spark, Flink und Hadoop zusammen. lesen

Objekte für die Zettabyte-Ära

Womit sich Start-ups heute beschäftigen – MinIO

Objekte für die Zettabyte-Ära

MinIO ist nach Angaben des gleichnamigen Herstellers „ein hochleistungsfähiger, verteilter Objektspeicher-Server für datenintensive Anwendungen wie Deep und Machine Learning, Künstliche Intelligenz und Big Data“. Erstellt wurde das Open-Source-Programm (unter der Apache-Lizenz 2.0) mit der Programmiersprache Go. lesen

Cloudera und Hortonworks vereinigen ihre Datenplattformen

Nachbericht DataWorks Summit Barcelona

Cloudera und Hortonworks vereinigen ihre Datenplattformen

Auf der diesjährigen DataWorks-Konferenz in Barcelona traten Cloudera und Hortonworks erstmals gemeinsam auf. Im Januar 2019 hatten beide auf Data Science und Big Data spezialisierten Anbieter ihren Zusammenschluss vollzogen. Als ein Ergebnis wird demnächst die neue Enterprise Data Cloud eingeführt, die vollständig auf Open Source basiert. lesen

Tibco übernimmt SnappyData

In-Memory-Plattform akquiriert

Tibco übernimmt SnappyData

Mit der Übernahme des In-Memory-Spezialisten SnappyData baut Analytics-Experte Tibco seine Connected Intelligence Platform weiter aus. Sie wird um eine Unified-Analytics-Datenarchitektur ergänzt. lesen

Exasol ist jetzt auch für Amazon Web Services verfügbar

Cloud-Data-Warehouse

Exasol ist jetzt auch für Amazon Web Services verfügbar

Die Exasol AG bietet ab sofort ihre Datenanalyse-Plattform für Amazon Web Services (AWS) auf Enterprise-Ebene an. Unternehmen erhalten damit die Möglichkeit, ein flexibles Data Warehouse in der Cloud bzw. eine Datenanalyse-Lösung über AWS bereitzustellen. lesen

Das kann Azure Databricks

Spark as a Service

Das kann Azure Databricks

Microsoft stellt mit Azure Databricks eine Analyseplattform in Microsoft Azure zur Verfügung, die auf der bekannten Analysesoftware Apache Spark aufbaut. Bei der Entwicklung der Plattform haben die Entwickler von Spark mitgearbeitet. lesen

Microsoft startet neue Datenanalyse-Services

Mehr Erkenntnisse aus Daten

Microsoft startet neue Datenanalyse-Services

Mit dem Azure Data Explorer, einer neuen Version von Azure Data Lake Storage und der Vorschau auf Mapping Data Flow in der Azure Data Factory stellt Microsoft eine Reihe an Analytics-Neuheiten vor. lesen

Der Data Lake integriert sich

Data Lakes

Der Data Lake integriert sich

Data Lake oder Data Warehouse? So schien lange Zeit die Alternative für Unternehmen zu lauten. Doch wie so oft gibt es in der betrieblichen IT kein Entweder-oder, sondern beide Infrastrukturen tauchen zunehmend gemeinsam auf. lesen

Mit Apache Metron Big-Data-Projekte schützen

Open-Source-Security-Lösung Apache Metron

Mit Apache Metron Big-Data-Projekte schützen

Big-Data-Projekte sind nicht nur für Firmen interessant, sondern auch für Cyberkriminelle. Apache Metron ist ein Open-Source-Projekt für ein Security-Analytics-Framework. Die Lösung besteht aus Modulen zum Parsen, Normalisie­ren und Anreichern von Daten mit internen und externen Bedrohungsinformationen und soll Big-Data-Projekte vor unbefugtem Zugriff schützen. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44458950 / Definitionen)