Apache Spark erfreut sich zunehmender Beliebtheit und Unterstützung im Bereich der Big-Data-Analysen und löst zunehmend Hadoop ab. Branchengrößen wie IBM und Intel vertreiben Spark und kooperieren mit dessen kommerziellem Anbieter DataBricks.
Stark vereinfachter Überblick über die Lambda-Architektur in Apache Spark: Deutlich zu erkennen sind die drei Schichten für die Datenverarbeitung.
(Bild: M. Matzer)
Der Grund für Sparks wachsende Beliebtheit hat mehrere Gründe. Mit Spark lassen sich zunächst einmal enorme Leistungssteigerungen erzielen – Experten sprechen von Faktor 100. Die In-Memory Computing Engine benötigt aber im Gegenzug erheblichen Rechenspeicher und einen Cluster als Datenspeicher. Spark kann entweder eigenständig oder in Hadoop-Clustern ausgeführt werden, die von YARN gesteuert werden.
Wesentlich folgenreicher ist die Flexibilität, mit der sich Spark für eine Vielzahl von Einsatzzwecken und Anwendungsgebieten nutzen lässt. Bei MapReduce muss ein Entwickler einer vorgeschriebenen Abfolge von Schritten folgen. Bei Spark kann „ein Entwickler in verschiedenen Sprachen für Spark entwickeln, nicht nur in SQL, sondern auch in Java, Scala, R oder Python“, berichtet Stephan Reimann, bei IBM ein Experte für Big Data. Das erlaube flexible Analysen und ein vielfältiges Arbeiten mit Spark.
„Außerdem kann der Nutzer verschiedene Workloads mit fast dem gleichen Code verarbeiten lassen“, so Reimann weiter. „Sowohl für Batch- als auch Stream-Verarbeitung ist nur die jeweilige Datenquelle anzugeben.“ Der Grund für diese erstaunliche Vielseitigkeit liegt in der Lambda-Architektur. „Sie erlaubt die mehrschichtige, gleichzeitige Verarbeitung von historischen und aktuellen Echtzeit-Daten und entsprechende Auswertungen in nur einer interaktiven Analyse bzw. Abfrage“, so Reimann weiter.
Top-Level-Projekt der Apache Community
Während man also noch Hadoop-ähnliche Batch-Prozesse nutzen kann, lässt sich beispielsweise Apache Storm für das Verarbeiten von Datenströmen heranziehen, gleichzeitig und parallel (siehe Bildergalerie). Storm ist inzwischen zum Top-Level-Projekt der Apache Community erhoben worden.
Ein weiterer Grund für die wachsende Beliebtheit ist die Vielfalt an Abfragemöglichkeiten. „Die Analyse erfolgt nicht nur mit SQL, sondern auch mit Scala und Python“, weiß Reimann zu berichten. Verschiedene Bibliotheken lassen sich heranziehen, so etwa Spark MLlib für das Data Mining und GraphX für die Analyse von Graphen, etwa in sozialen Netzwerken. Das macht Spark zu einer Art Schweizer Offiziersmesser für Big-Data-Analysen.
Big Blue engagiert sich stark im Bereich Spark. „IBMs Bibliothek SystemML wird der Open Source Community zur Verfügung gestellt und soll in die Spark-Bibliothek MLlib integriert werden, berichtet Reimann. „Im Bereich maschinelles Lernen herrscht sehr viel Aktivität.“ Denn maschinelles Lernen wird für Data Mining benötigt: „Man muss Muster erkennen, um Vorhersagen machen zu können. Man kann Probleme und Fehler in der Produktion zwecks Qualitätssicherung erkennen und diesen entgegensteuern – oder für eine Recommendation Engine im E-Commerce.“
Spark-Technologiezentrum
IBM hat in San Francisco ein Technologiezentrum für Spark eröffnet. „Hier werden unter anderem Performance-Tests und Benchmarking für Spark SQL durchgeführt“, berichtet Reimann. Man wolle herausfinden, was man noch verbessern kann. Zu den Projekten, die in diesen Labors ausgetüftelt werden, gehört etwa auch die Twitter-Analyse auf Spark, die bislang mit Watson Services realisierbar war.
IBM liefert Spark als Teil seiner SQL-kompatiblen Hadoop-Distribution „BigInsights“ aus, stellt es aber auch als Cloud Service aus seiner Platform-as-a-Service BlueMix bereit. „IBM bettet Spark auch in eine Reihe seiner Produkte ein oder integriert es als Laufzeitumgebung“, so Reimann. „Mittlerweile ist es gut integriert mit SPSS, sodass der Nutzer seine eigenen Algorithmen direkt in Spark laufen lassen kann.“
Mit seiner neuen z/OS-Plattform für Apache Spark will IBM es Unternehmen und Behörden leichter machen, auf ihre Mainframe-Daten zuzugreifen und diese lokal ohne Offloads und mit Zeitersparnis zu analysieren. „Dadurch ergeben sich für Datenanalysten sowie Entwickler neue Möglichkeiten und sie können fortgeschrittene Analytik-Werkzeuge für den reichhaltigen Datenbestand auf dem Mainframe einsetzen und mehr Erkenntnisse in Echtzeit gewinnen“, so das Unternehmen Anfang April.
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Schon im Februar 2015 verkündete der Chipriese Intel seine Partnerschaft mit dem Unternehmen Databricks, das von den „Erfindern“ von Spark gegründet wurde, um ihr Produkt Databricks Cloud zu vertreiben. Intel, Databricks und AMPLabs, der Vorgänger von Databricks an der Uni Berkeley, wollen die Echtzeitanalyse-Fähigkeiten der Spark-Plattform für die Intel-Architektur verbessern.
Im Juni stellte Michael Green, Intels zuständiger Vice President, Streaming SQL for Apache Spark vor, also die SQL-basierte Spark-Komponente, die man für die Verarbeitung von Datenströmen nutzen kann. Diese Datenströme können aus dem Internet der Dinge oder aus sozialen Netzwerken kommen. Ihre Verarbeitung in Echtzeit verschaffe den sie nutzenden Firmen einen Wettbewerbsvorteil, so Green in seinem Blog.
Die von Intel unterstützte Weiterentwicklung Sparks hat im November 2015 zur Ankündigung zahlreicher Verbesserungen in Version 1.6 geführt. Deren Liste findet sich online und auch in den Release Notes. Unter anderem lässt sich für Apache Streaming eine höhere Leistung erzielen und der Speicher wird nun automatisch konfiguriert. Für Entwickler ist wichtig, dass die Dataset-Programmschnittstelle (API) geändert wurde.
Mit zwei mächtigen US-Konzernen im Hintergrund und einer regen Open Source Community, die die Plattform rasch weiterentwickelt, darf man für Apache Spark eine blühende Zukunft erwarten.