Big Data verändert nicht nur die Unternehmens-IT fundamental, sondern auch die Arbeit des Analysten. Die klassischen Analysten sehen sich im Zuge des Wandels zu einer datengetriebenen Unternehmenskultur mit neuen Anforderungen und ungewohnten technologischen Plattformen konfrontiert. Sie müssen als Data Scientist fachliche Fragestellungen unter dem Aspekt der Big Data-Technologien umsetzen, visualisieren und aus den Daten Werte generieren. Anhand eines konkreten Anwendungsfalls, der Programmierung eines Recommender-Systems, vergleichen wir eine konventionelle Implementierung in R mit zwei Implementierungen in der Big-Data-Technologie Spark (mit Spark Data Frames bzw. mit der Spark Machine Learning Library – MLlib).  Der Vortrag richtet sich an Teilnehmer mit Grundkenntnissen aus den Bereichen Analytische Methoden und Machine Learning. Zu Spark werden keine Kenntnisse vorausgesetzt.

3 Fragen an den Experten

Im Programm der SMART DATA Developer Conference 2016 vergleicht Dr. Henrik Behrens anhand der Programmierung eines Recommender-Systems die konventionelle Implementierung in R mit zwei Implementierungen in Spark (DataFrames und MLlib).

Herr Dr. Behrens, macht „Big Data“ klassische Analysten/Statistiker arbeitslos, oder haben diese als Data Scientists in Zukunft nur noch mit Zusatzausbildung Softwareentwicklung eine Chance auf dem Arbeitsmarkt?

Das hängt unter anderem von der Definition von „Big Data“ ab. Wenn wir darunter clusterfähige Technologien verstehen, so ist meine Einschätzung, dass es zwar immer häufiger Projekte geben wird, die mit Big Data-Technologien durchgeführt werden. Es wird aber in absehbarer Zeit immer einen erheblichen Anteil an Projekten geben, die sich weiterhin mit konventioneller Technologie (z.B. R) lösen lassen. Insofern bleibt das Knowhow bei den klassischen Tools weiterhin wertvoll. Wer zusätzlich über Erfahrungen im Bereich Big Data verfügt, wird zunehmend gefragter sein, eine Zusatzausbildung in Softwareentwicklung halte ich aber nicht für erforderlich.

Sind konventionelle Technologien wie R von vorneherein ausgeschieden für moderne Anwendungsfälle wie „Big Data“ – oder gibt es bestimmte Anwendungsfälle, in denen erstere zu empfehlen sind?

Auch hier stellt sich die Frage, was man genau unter „Big Data“ versteht. Viele Anwendungsfälle können sowohl mit konventionellen als auch mit Clustertechnologien bearbeitet werden. Bei dieser Sichtweise charakterisiert „Big Data“ eher die Lösung als den Anwendungsfall. Meint man mit „Big Data“ die Arbeit mit unstrukturierten Daten (z.B. Text Mining) oder die Erstellung prädiktiver Modelle (Machine Learning), so spricht nichts gegen die konventionellen Technologien, solange die Ressourcen des verwendeten Servers die Erledigung der Aufgabe in akzeptabler Zeit zulassen. Clustertechnologien bedeuten grundsätzlich zusätzliche Komplexität, die man normalerweise erst in Kauf nimmt, wenn man sie benötigt oder den Umgang mit der Technologie lernen will. Hat man allerdings einen Cluster zur Verfügung und Erfahrungen damit gesammelt, sinkt naturgemäß die Hürde, ihn auch für Anwendungsfälle einzusetzen, die auch mit konventionellen Technologien lösbar wären. Allerdings sind die clusterbasierten Technologien mitunter weniger ausgereift als die konventionellen Technologien, was in Einzelfällen für den Einsatz einer konventionellen Technologie sprechen kann.

Ist ein Algorithmus im Big-Data-Umfeld gleichzusetzen mit Machine Learning bzw. umgekehrt: Steht hinter Machine-Learning-Anwendungen immer ein Algorithmus?

Algorithmen sind Formalismen zur automatischen Lösung von Problemen. Beim Thema Machine Learning kommen Algorithmen zum Trainieren eines Modells und zur Verwendung eines Modells zum Einsatz. Darüber hinaus gibt es natürlich viele Algorithmen, die mit Machine Learning nichts zu tun haben. Beide Klassen von Algorithmen können mit clusterfähigen Technologien (die ich als „Big Data“ bezeichnen würde) und mit konventionellen Technologien realisiert werden. Big Data Technologien werden sehr oft auch jenseits von Machine Learning-Aufgaben eingesetzt, z.B. für Data Warehousing.