Unlängst sass ich mit einem befreundeten Küchen-Chef am Tisch, welcher mich bezüglich meiner Aufgabe in der Vorbereitungs-Phase oder auch „Mise en Place“ instruierte. Ich freute mich auf den darauf folgenden Abend, denn ich durfte dem emsigen Treiben in der Küche beiwohnen. Davor haben wir uns über wichtige Ströme in unseren Berufen unterhalten und es entstand auf einer Serviette ein Vergleich zwischen „Nouvelle Cuisine“ und „Big Data“. Dieses angeregte Gespräch, die Serviette und ein Glas Weisswein führten zu diesem Blog…
Tatsächlich beeinflusst die Digitalisierung nicht alle beruflichen Abläufe gleichermassen. Und womöglich behält mein Gesprächspartner recht, wenn er annimmt, dass auch in naher Zukunft Speisen im Restaurant erst vorbereitet, zubereitet, angerichtet, serviert und anschliessend verköstigt werden. Ein fester Ablauf, welcher auch nur in dieser Reihenfolge Sinn macht…
Dennoch: mit «Nouvelle Cuisine» ist es den grossen Köchen bestimmt ähnlich ergangen, wie uns heute mit «Big Data». Es ist nicht primär der festgelegte Ablauf in der Küche revolutioniert worden, sondern vielmehr der Umgang mit einzelnen Zutaten.
Trotz neuer Kochkunst hat der «Nouvelle Cuisine» Koch seine Hilfsmittel behalten können. Suppen durfte er auch weiterhin mit der Holzkelle umrühren und ein kleiner Teelöffel ist immer noch unverzichtbar, um die Sauce zu probieren. Wie verhält es sich aber mit der Welt der strukturierten Daten?
Kochen wir im Data-Warehouse anders, wenn «Big Data» kommt?
Sind erst neu zu erschliessende Datenquellen identifiziert, werden diese nach einem festen Muster ans System angebunden und den DWH-Gästen serviert. Was dem Koch sein Teelöffel, ist dem Daten-Scout das «Select Stärn» [1]. Wer dieses SQL-Statement nicht schon in seiner DNA vererbt erhalten hat, wird es innert kürzester Zeit verinnerlicht haben. Im Falle von nicht- oder semi-strukturierten Daten, werden wir mit einem Select-Stärn-Teelöffel allerdings geringe Chancen haben, die neuen Daten abzuschmecken. Heisst «Big Data» nun, dass man die Daten einfach so akzeptiert? Direkt vom Kochherd auf den Tisch? Schliesslich weist «veracity», eines der vielzitierten «V’s» der Big Data Definition, auf eine mögliche «Unschärfe» hin.
Ich hätte Freudensprünge machen können, als uns erstmals «Apache Hive™» vorgestellt wurde.
Offenbar teilten viele Daten-Köche unsere Sorgen und andere haben bereits vor uns bewährte Lösungen entwickelt. Dieser Zugang zu SQL begleitet die grossen Daten („Big Data“) auf der ganzen Wertschöpfungskette. Von der Vorbereitung der Daten bis zum Verzehr auf dem Visualisierungs-Tablett.
Apache Hive™ – Küchenhelfer zur SQL-Welt
Mit HiveQL stellt Apache Hive™ einen SQL-ähnlichen Syntax zur Verfügung. Die Erweiterung baut auf Apache™ Hadoop® auf und ist deshalb besonders reizvoll, weil mittels SQL direkt auf die unstrukturierten Daten zugegriffen werden kann, welche sich auf dem Hadoop File System befinden (HDFS). Wir sprechen vom Schema-on-Read-Ansatz, im Gegensatz zu Schema-on-Write, wie dies bei relationalen Datenbanksystemen der Fall ist. Wer mag, darf Hive auch einsetzen, um Daten aus Apache HBase™ auszulesen, welche dort nicht-relational modelliert abgelegt werden.
Braten und dünsten mit Scala
Sind unsere Daten erst in einem DataFrame kurz angebraten, stellt uns Scala wunderbare Hilfsmittel zur weiteren Zubereitung zur Verfügung. Klar, «Dataframe Query» ist nicht SQL. Aber die Befehle kommen der Sache schon sehr nahe. Kenner von SQL (und Java sowieso) werden sich schnell zurecht finden am Herd, wo mit Methoden wie «select()», «join()», «filter()» und «show()» gebraten und gedünstet wird.
In Scheiben geschnitten oder gehackt, serviert wird’s strukturiert
Mittels JDBC und dem passenden Treiber für unser RDBMS kochen wir die Daten in den dafür vorgesehenen Entitäten gar, vorausgesetzt es wird kein Pot-au-feu oder eine Gemüsesuppe. Sind die Daten erst im relationalen Datenbanksystem angekommen, befinden wir uns auch wieder in unserer wohlbekannten Welt, der Welt der SQL-Datenbanksprache.
Was auch immer auf den Teller kommt, angerichtet wird’s farblich und geschmacklich sortiert und strukturiert. Noch die eine oder andere Deko drauf zur besseren Visualisierung und raus zum Kunden, möge er seine Freude dran haben.
In den vergangenen Monaten unseres CAS «Big Data Analytics» wurde deutlich, dass «Big Data» anders ist, als die gutbürgerliche Art, Daten-Gerichte zu kochen. Doch Entlang der Daten Value Chain schlägt die «Big Data Nouvelle Cuisine» immer wieder Brücken zur strukturierten Daten-Welt.
Seit «Nouvelle Cuisine» haben sich viele neue Ausprägungen der Kochkunst entwickelt und eine geschmackvolle Koexistent gefunden. Die „Big Data“ Veränderungen in der Datenverarbeitung sind nur ein Anfang. Wir dürfen uns auf viele weitere Entwicklungen und Daten-Abenteuer freuen. Doch zuvor trete ich mein heutiges Abenteuer in der Küche an. Mise en Place, Knoblauch vorbereiten. Mahlzeit!
[1] select * from <table>