Menü
Developer

Apache Spark 2.0 ist vollständig und vereinheitlicht den Datenzugriff

Das besonders im Big-Data-Umfeld zur Datenanalyse beliebte Framework hat in der zweiten Hauptversion unter anderem API-Verbesserungen und Support für SQL2003 mitgegeben bekommen.

vorlesen Drucken Kommentare lesen 1 Beitrag
Apache Spark 2 freigegeben

Bereits im Mai hatte das Apache-Spark-Projekt mit einer Technical Preview einen ersten Blick auf Version 2 des Frameworks für über mehrere Cluster verteilte Berechnungen gestattet. Nachdem das Feedback der letzten zwei Monate aufgenommen und integriert wurde, steht das zweite Major Release nun fertig zur Verfügung. Neuerungen im Kern und bei Spark SQL umfassen unter anderem einen nativen SQL-Parser, der sowohl mit ANSI-SQL als auch mit Hive QL umgehen kann, die Möglichkeit, Subquerys einzusetzen und die Option zum Verwenden von CSV-Dateien als Quelle. Außerdem steht etwa beim Cachen Off-heap-Management zur Verfügung.

Als eine der größten Änderungen des Release preist die Ankündigung zudem die aktualisierten APIs an. Unter anderem ist DataFrame in Scala und Java nun ein Type Alias für ein Datenset einer Reihe, wodurch DataFrame und Dataset vereinheitlicht sind. In Python und R ist aufgrund der fehlenden Typensicherheit hingegen DataFrame die Hauptprogrammierschnittstelle.

Als Ersatz für SQLContext und HiveContext dient nach dem Update SparkSession, damit Nutzer der DataFrame- oder Dataset-API nicht länger den Kontext beachten müssen. Mit der derzeit noch experimentellen API Structured Streaming, können Nutzer Streaming-Quellen und -Senken mit den selben DataFrame- und DataSet-APIs ansprechen, die sie auch für statische Datenquellen verwenden.

In Sachen MLlib ist nun die mit DataFrames arbeitende Schnittstelle als primäre API zu betrachten, die RDD-nutzende wird hingegen in den Wartungsmodus versetzt. Das Abspeichern von ML-Modellen und -Pipelines in Scala, Java, Python und R ist in der API mit wenigen Ausnahmen umgesetzt, außerdem verfügt sie über neue Algorithmen wie Gaussian Mixture Models. SparkR bietet nun MLlib-APIs für allgemeine lineare Modelle, K-Means Clustering und ähnliches an. Wichtigste Verbesserung ist allerdings die Verfügbarkeit benutzerspezifischer Funktionen. Weitere Details lassen sich der Ankündigung entnehmen. (jul)