Zum Hauptinhalt springen

Live vom Spark Summit 2018 in London

Ich darf in diesem Jahr wieder „live“ vom Spark Summit Europe berichten. Dieses Jahr findet er in London statt. Die Veranstaltung ist in den letzten Jahren in Inhalt und Umfang gewachsen, so dass nun schon dieselben Räumlichkeiten in London genutzt werden, die sonst größere Veranstaltungen wie die Strata beherbergen. Die Schätzung beläuft sich auf 1.500 Teilnehmer gegenüber 1.100 im Vorjahr.

Neue Schwerpunkte

AI

Genau genommen ist es dieses Jahr auch nicht mehr nur der Spark Summit. Die Veranstaltung ist neu gebrandet als „Spark + AI Summit“. In meinen Augen völlig zu Recht und nicht bloß zur Schmückung mit Buzzwords. Vor drei bis vier Jahren hat man Spark von außen noch als eine weitere Big-Data-Technologie neben anderen gesehen. Tatsächlich ist es jedoch in meinen Augen die einzige, die in diesem Umfang die Entwicklung von Data-Science-Anwendungen end-to-end von der Datenintegration bis hin zum Machine-Learning-Prozess abdeckt, und das bei schier unbegrenzten Datenmengen. Nahezu jeder Anwendungsfall aus den Vorträgen des Summits beinhaltet ein Machine-Learning-Modell, mit einem stark steigenden Anteil von Deep-Learning-Techniken.

Die einleitenden Keynotes am Vormittag vertieften den Fokus auf AI. Ein eindrucksvoller Anwendungsfall von Shell zeigte zum Beispiel, wie Deep-Learning-basierte Bilderkennung genutzt werden kann, um in Tankstellen schnellstmöglich auf Gefahrenherde (z. B. Brandursachen) hinzuweisen.

Unification

Ein weiterer Fokus der Keynotes lag dieses Jahr auf der Zusammenarbeit von Data Scientists und Data Engineers. Ali Ghodsi, ein Co-Founder von DataBricks, behauptet, dass nur 1 % der Unternehmen wirklich erfolgreich im Einsatz von AI sind. Die anderen scheitern wohl daran, dass die Daten noch nicht für AI geeignet integriert sind, dass die Daten in Silos vorliegen, oder letztendlich daran, dass es keinen gemeinsamen Workflow von Data Scientists und Engineers gibt.

Der Wunsch nach mehr Zusammenarbeit auf einer gemeinsamen Plattform wird von DataBricks als Veranstalter allerdings nicht ganz uneigennützig heraufbeschworen. „Unifying Data Science + Engineering“ ist der neue Slogan der DataBricks-Plattform. Ich bin dennoch überzeugt, dass DataBricks mit dieser Ausrichtung den Kern des Problems richtig einschätzt.

Spark Roadmap

Natürlich gab es bei den Keynotes auch wieder Neuankündigungen von Produkten/Projekten und Features. Zunächst ein Update der künftigen Releases: Spark 2.4 wird vermutlich innerhalb der nächsten Tage veröffentlicht. Neuerungen gibt es vor allem bei Details im Bereich Structured Streaming. Gleichzeitig wird für 2019 ein Spark 3 angekündigt, allerdings wurde noch nichts über die Inhalte berichtet.

Neuankündigungen und Updates

ML-Flow

Der Großmeister Matei Zaharia gab selbst ein Update zu ML-Flow. Ich hatte vor wenigen Wochen über dieses neue Open-Source-Projekt von DataBricks berichtet. Diese Machine-Learning-Plattform soll den Data-Science-Workflow von der Datenaufbereitung über das Training bis zur Implementierung und zurück deutlich vereinfachen und standardisieren. Die Vielfalt an unterschiedlichen Technologien und Frameworks soll standardisiert abgekapselt werden. Ich konnte Matei gestern noch persönlich darauf ansprechen und er betonte, dass er ML-Flow sogar als Template für ML-Projekte sieht. Pünktlich zur Präsentation wurde gestern auch eine neue Version 0.7 veröffentlicht. Diese enthält nun zusätzlich zur ursprünglichen Python-API auch eine Java/Scala-API. Darüber hinaus gibt es wohl eine ML-Flow seitens des RStudios.

 

Hydrogen

Das neue Projekt Hydrogen versucht, die Performance von Deep-Learning-Anwendungen auf Spark zu verbessern. Diese stützen sich meist auf Python und durch den ständigen Wechsel der Java-Runtime von Spark zu Python können rund 92 % der Rechenleistung nur durch den Austausch zwischen den Technologien verloren gehen. Eine Weiterführung der Pandas-UDFs aus Spark 2.3, ein neues Scheduling-Konzept sowie andere Optimierungen sollen diesen Bottleneck dramatisch auf ein Hundertstel schrumpfen lassen.

 

Timetravel

Mit einem zwinkernden Auge wurde verkündet, dass DataBricks nun die Zeitreise erfunden hat. Leider dürfen vorerst nur die Daten reisen und auch nur in die Vergangenheit. Konkret bedeutet das, dass eine Verzahnung von DataBricks Delta, der Plattform für Datenintegration, mit ML-Flow es ermöglicht, alle Machine-Learning-Berechnungen berichtstreu zu gestalten. Das heißt, ein Modell-Training, das jeden Morgen auf einer neu aktualisierten Datenquelle ausgeführt wird, kann bei Bedarf komplett aus der Perspektive eines vergangenen Tages mit dem damaligen Datenstand neu ausgeführt werden. Damit wird das Debuggen von plötzlichen Veränderungen in der Performance des Modells dramatisch erleichtert.

Außerdem

Neben den Keynotes gibt es natürlich noch zwei Tage vollgepackt mit über 100 Präsentationen von „Technical Deep Dives“ bis hin zu exotischen Anwendungsfällen von Spark. Allgemein ist in diesem Jahr deutlich die Ausweitung von DataBricks auf Microsofts Azure-Cloud zu spüren. Microsoft tritt als großer Sponsor auf und viele vorgestellte Anwendungsfälle wurden bereits dort durchgeführt.

Zuletzt scheint sich die Rolle von Python im Spark-Universum weiter zu stärken. Natürlich ändert sich nichts daran, dass die performantesten und produktionssichersten Spark-Anwendungen immer noch in Scala geschrieben werden. Man erfährt auch im Austausch, dass immer noch viele mit PySpark starten, aber irgendwann zu Scala migrieren. Dennoch ist es ein Statement, dass ML-Flow vor dem aktuellen 0.7-Release nur in Python veröffentlicht wurde und hart daran gearbeitet wird, die Performance-Lücken von PySpark zu Scala-Spark zu schließen. Python entwickelt sich zur Standardsprache für Deep-Learning-Frameworks und deswegen wurde auch der Großteil der Live-Demonstrationen in den Keynotes mit Python-Code durchgeführt. Es bleibt spannend, wie die technologische Ausrichtung sich für Spark 3 entwickeln wird.

spark-summit-2018

 

Stefan Seltmann
Dein Ansprechpartner
Stefan Seltmann
Lead Expert
Stefan liebt das Programmieren, vor allem rund um Data Engineering und Data Science, und arbeitet quasi in seinem Hobby. Gerade für Softwareentwicklung mit Python und/oder Spark punktet er als b.telligents Telefonjoker.
#CodeFirst, #TestMore, #CodeDoctor