Zum Hauptinhalt springen

Die Highlights des Spark Summits 2016 in Brüssel

Diesen Blog-Eintrag verfasse ich mal nicht in einer ruhigen Minute in unseren b.telligent-Büros, sondern live aus Brüssel vom Spark Summit. Für Data Scientists bietet es einen enormen Umfang an Machine-Learning-Verfahren, sowohl klassisch für statische Datensätze als auch für Streamingdaten in Echtzeit. Jeder mit Praxiserfahrung in der Python-Bibliothek sklearn wird sich sofort zuhause fühlen, da diese als Vorbild verwendet wurde.

 

Spark Recap

Spark sollte man eigentlich nicht mehr vorstellen müssen. Dennoch für alle, die erst spät zugeschaltet haben: Spark ist ein Open-Source-Framework für verteiltes Rechnen. Man nennt es häufig in einem Satz mit vielen Big-Data-Technologien und gerne wird es mal fälschlicherweise als Hadoop-Konkurrent bezeichnet. Tatsächlich ist es eher eine sinnvolle Ergänzung dazu, denn während Hadoop eher ein Framework für auf Cluster verteiltes und robustes Speichern von Massendaten ist, kann Spark diese Datenmengen höchst performant verteilt für Berechnungen verarbeiten. Spark selbst mag man zwar zu den Big-Data-Technologien rechnen, aber es hat per se keine eigene Datenhaltung.

 

Der Spark Summit

Spark ist noch sehr neu in Maßstäben herkömmlicher kommerzieller Software. Der erste Wurf wurde erst vor vier Jahren veröffentlicht, aber in den USA wird es bereits seit einem Jahr als die "Taylor Swift of Big Data software" gefeiert und es gab bereits mehrere internationale Spark-Messen. Ich befinde mich nun gerade auf einer solchen, dem europäischen Spark Summit 2016. Das ist eine von mittlerweile drei Veranstaltungen im Jahr und die einzige außerhalb der USA. Hier wird mit etwa 1.000 Besuchern und 100 Vortragenden aus Wirtschaft und Forschung über Weiterentwicklung/Trends, technische Feinheiten und Anwendungsfälle von Spark berichtet.

 

Der Meister spricht

Für mich ist es beeindruckend, die Keynote Speech von Matei Zaharia mitzuerleben. Matei hat Spark in seiner ersten Fassung ja erst vor ein paar Jahren als universitäre Arbeit während seiner Promotionszeit in Berkeley veröffentlicht. Nun hat er eine Professur in Stanford inne und ist Mitgründer und CTO von Databricks. Das Unternehmen trägt den Großteil der Entwicklungsarbeit an Spark und ist weltweit führend in der Bereitstellung von kommerziellen Arbeitsumgebungen für Spark. Der Summit in Brüssel ist sozusagen eine Databricks-Hausmesse.

Matei lässt es sich auf den Spark Summits nicht nehmen, selbst die Eröffnungsrede zu halten und seine neuesten Visionen für Spark mit dem sichtlich begeisterten und ehrfürchtig lauschenden Publikum zu teilen. Er strahlt dabei die Aura eines IT-Nerds aus, ist hoch konzentriert auf sein Thema, spricht ohne Punkt und Komma, ... man hört ihn regelrecht Atem holen zwischen langen Sätzen. Dafür ist er routiniert und sehr sicher in seinem Vortrag. Man kann schon sagen, dass der Spark Summit letztlich seine Veranstaltung ist.

 

keynote-spark-summit-2016

 

Die Neuerungen in Spark 2.0 

Der aktuelle Summit ist der erste seit dem Launch von Spark in der Version 2.0. Diese Version bringt zunächst deutliche Performancegewinne durch weitere grundlegende Optimierungen (Project Tungsten: "Bringing Apache Spark Closer to Bare Metal") sowie Vereinheitlichungen in den APIs mit sich, vor allem bei der Zusammenführung von DataFrames und DataSets.

Darüber hinaus wurde die neue Schnittstelle für Streamdaten vorgestellt. Hierzu wurde in der zweiten Keynote eine Livedemonstration mit Twitterfeeds gezeigt, für uns Europäer zum Brexit statt zum Clinton-Trump-Wahlkampf. Das Machine-Learning-Modell, das zunächst für statisch eingelesene Daten bzw. Batchberechnungen erstellt wurde, konnte einfach mit Anpassung einer Zeile auch für eine Streamingquelle genutzt werden. Der Vortragende wechselte dabei auch laufend im selben Notebook zwischen Code in Scala und Code in Python. Durch diese stärker generische API muss der Spark-User sich also nicht mehr im Vorfeld entscheiden, ob er für Streaming oder Batchverarbeitung entwickelt.

 

Interessante Vortragsthemen

Die auf die Keynotes folgenden Vorträge sind in vier Tracks aufgeteilt, nach Data Science, Developer, Spark Ecosystem und Enterprise. Mit insgesamt etwa 1.000 Summit-Besuchern sind die Vorträge immer gut besucht. Die inhaltliche Bandbreite reicht von Predictive-Maintenance-Themen, z. B. Vorhersage von Weichenausfällen in Eisenbahnnetzen, über die Verknüpfung von Spark mit geeigneten Technologien (R-Wrapper, Sparkling Water/H20, Apache Ignite) bis hin zu "Internet of Things"-Themen. Ein Vortrag von mmmmoooogle berichtete sogar vom Einsatz von Spark für die Analyse von unzähligen biometrischen Daten an vernetzten Kühen zur Steigerung der Milchproduktion, also ein "Internet of Cows".

 

Der Hype geht weiter

Spark verbreitete sich sehr schnell in den letzten drei Jahren, sowohl in Forschung wie auch in Industrie und Wirtschaft. Ein leitender Business Developer von Databricks erzählte mir bei einem Termin, dass eigentlich keiner der Databricks-Kunden Spark ausprobiert hat und dann zum Schluss gekommen ist, es würde nicht wie gewünscht funktionieren oder für ihn ungeeignet sein. Er erklärte mir weiterhin, dass die Anfragen und Ideen für neue Features in Spark so gewaltig sind durch die rasant wachsende Community, dass Databricks zunächst immer erst priorisieren muss, welche Entwicklung der größte Benefit für möglichst viele User darstellt, bevor sie sich eines Themas annehmen.

Bei Spark von einem Hype zu sprechen, tut der Technologie in meinen Augen etwas unrecht. Hype impliziert für mich immer etwas eine Blase um das Thema. Aber bei Spark wird nichts versprochen, was es nicht halten kann, und der Erfolg sowie die schnelle Verbreitung sprechen für sich. Es bleibt spannend.

 

"One More Thing", Update für Tag 2

Die aktuellen Keynotes am zweiten Tag des Spark Summits bringen einige interessante Ankündigungen mit sich.

 

Apache Spark + Google Tensorflow + Databricks = Tensorframe

Databricks hat soeben ein neues Produkt angekündigt, und zwar TensorFrame. Wer ein Databricks-Notebook benutzt, kann sich auf den komfortablen Service verlassen, dass innerhalb von Minuten bei Bedarf ein skalierbarer Cluster von Spark-Nodes in der AWS Amazon Cloud (oder bald auch in Microsoft Azure!) gestartet wird. Das nimmt dem User die komplette aufwendige Infrastruktur ab und stellt komplexe vorkonfigurierte Rechensysteme quasi sofort zur Verfügung. Dieser Status quo wird erweitert um neu verfügbare Spark-Nodes, die auf GPUs, also Grafikkarten, basieren und maßgeschneidert sind für Deep-Learning-Aufgaben.Der Vortragende konnte eindrucksvoll eine Livedemonstration zeigen, in der in kurzer Zeit Googles DeepDream-Algorithmus über Tensorflow innerhalb eines Databricks-Spark-Notebooks auf ein frisch aus dem Netz gezogenes Bild von Boris Johnson angewendet wurde. Impressive!Spark arbeitet hier übrigens mit dem Grafikkartenhersteller NVIDIA zusammen, um die Technologien weiter aufeinander abzustimmen.

 

IBM Watson Platform

IBM stellte in der zweiten Keynote seine neue Machine-Learning-Werkbank vor. Das Produkt benötigte nur ein halbes Jahr Entwicklung bis zur jetzigen Veröffentlichung als "Closed Beta"-Version. Es gehört zur IBM-Watson-Familie und bietet eine "end to end collaboration platform" für Machine Learning. Man spricht sogar von einer Demokratisierung von Machine Learning, da die Bedienung so einfach sei, dass jeder damit arbeiten könne. Gleichzeitig bietet es genügend Optionen und Eingriffsmöglichkeiten für professionelle Data Scientists.
Dieses Produkt wurde komplett in Spark realisiert. Es zeigt das Potential von Spark, dass es erst etwa drei Jahre nach der Veröffentlichung als Kern erfolgreich für ein IBM-Watson-Produkt verwendet wurde.

 

spark-summit-stefan-seltmann-2016

Stefan Seltmann
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