Big-Data-Projekt für ein Pharmaunternehmen Eine der Apollogic-Erfahrungen, die mit der Einführung von Big-Data-Technologien in Unternehmen verbunden war, war es, ein führendes Pharmaunternehmen in den USA zu unterstützen. Das Ziel war es, ein System zu schaffen, das für die automatische Integration aller Verkaufsdaten in einem Ort (dem so genannten "Data Lake") verantwortlich ist. Das entstandene System sollte im gesamten Unternehmen verwendet werden, indem der Zugriff auf granulare Daten, sowie auf solche, die aus vielen kommerziellen Quellen integriert und aggregiert wurden, gesichert wurde. Die Plattform, die für die Verarbeitung von Terabytes von Daten verantwortlich war, wurde auf einem Multi-Node-Cluster Apache Hadoop, einer Clouder Distribution entwickelt. Die wichtigsten Parameter des Clusters waren auch beeindruckend: ­ ­ ­ ­ 18 Nodes, RAM 1,32 TB, 468 Prozessoren 919 TB Speichervolumen Apache Hadoop wird oft als das erste Framework, das mit dem Thema Big Data verbunden ist, erwähnt. Dieses Projekt begann im Jahr 2005 und die erste Produktionsversion 1.0 von Hadoop wurde am Ende des Jahres 2011 veröffentlicht. Was wichtig ist, wird die gesamte Umgebung als Open Source zur Verfügung gestellt. Derzeit arbeitet man an der dritten Version der Software, die noch im Jahr 2016 erscheinen soll. Heutzutage wächst rapide die Menge der Daten, die aus verschiedenen Quellen von Unternehmen gewonnen werden. Viele von ihnen sind nicht in der Lage, mit den Änderungen, die für die Verarbeitung notwendig sind, Schritt zu halten. Die Unternehmen haben nicht das Wissen, wie man die Informationen am effektivsten verwendet, und was damit verbunden ist, wie man sie in verständlicher Weise den Führungskräften präsentieren soll. Das Management könnte auf ihrer Basis die richtigen Geschäftsentscheidungen treffen. Ein ähnliches Problem trat auch während der beschrieben Zusammenarbeit auf. Die Schwierigkeiten mit großen Datenmengen, die bei der Verarbeitung mehr und mehr Zeit in Anspruch nahmen, sowie deren Volumen, überzeugt das Management dazu, Informationen aus mehreren fragmentierten Datenbanken in einen „Data Lake" zu übertragen. Er sollte mit Hilfe von der Apache Hadoop-Umgebung arbeiten. Diese Lösung sollte die Verarbeitung der Daten erheblich beschleunigen, die weiter verwendet werden, um die globale Vertriebsstrategie zu bestimmen. Das Apollogic-Team war für den ersten und wichtigsten Teil dieses Prozesses verantwortlich. Zunächst wurden die Quelldateien, die oft eine Größe von mehr als 100 GB hatten, durch den Auftragnehmer in einer komprimierten gzip-Form zur Verfügung gestellt. Die Aufgabe von Apollogic war es, den ETL-Prozess auf Cluster vorzubereiten, um die Daten zu verarbeiten. Neue Pakete wurden uns alle zwei Wochen geliefert. Der gesamte Prozess vom Eingang bis zur Vorstellung bei den Endverbrauchern bestand aus 5 Stufen (Abbildung 1). ul. Rubież 46, 61-612 Poznań tel. +48 61 622 6950 www.apollogic.com Abb. 1. Schematische Darstellung des Prozesses des Ladens der Daten in die HadoopUmgebung Von dem erstmaligen Laden der Daten auf die Plattform durch ihre Validierung (Überprüfung, ob gelieferte Menge an Daten mit der Spezifikation übereinstimmt), dann die Bereitstellung zu ihrer Verarbeitung, die Wiederaufbereitung und die Durchführung der weiteren Validierung. Nach der anfänglichen Verarbeitung der Daten erfolgte ein Bedarf für Archivierung der Ergebnisse. Wieder einmal war es notwendig, ein Archiv zu haben, aus dem jederzeit die erhaltenen Ergebnissen wiederhergestellt werden konnten. Ohne diesen Schritt hätte das Projekt nicht gelingen können. Ferner wurden die Daten vollständig an eine andere Basis übertragen, wo sie nun von Analysten auf beliebige Weise verarbeitet werden konnten. An dieser Stelle lohnt es sich, die Menge an verarbeiteten Informationen zu nennen - einzelne Tabellen konnten von Hunderten von Millionen bis ein Dutzend von Milliarden von Datensätzen haben und die Größe wurde mit jeder weiteren Verarbeitung größer. Die Zeit, sie alle zu verarbeiten, betrug etwa drei Tage - das war ein wirklich großer Erfolg. Der gesamte Prozess beruhte auf einer komplexen Verarbeitung von Daten, deren Anforderungen von den Unternehmensvertretern zur Verfügung gestellt wurden. Die ideale Lösung war es in diesem Fall, BASH-Skripte (Abbildung 2 - MapRecuce Job) für die Verarbeitung zu verwenden, da die Prozessanzahl für uns bisher ungewöhnlich war. Jedes manuelle Verarbeitungsverfahren war zum Scheitern verurteilt. Die BASH-Skripte, die mit einem der führenden ELT-Tools - Informatica Big Data Edition - verbunden waren, ermöglichten eine vollständige Automatisierung der durchgeführten Aktivitäten. Dies machte es möglich, viele Fehler zu vermeiden, die sicherlich in anderem Fall begangen worden wären. Darüber hinaus wurde in den Skripten das Tool Beeline verwendet - ein Werkzeug, das die Kommunikation mit Apache Hive und somit mit den in unserem Cluster verstreuten Daten ermöglichte. Hive ist ein Werkzeug, das zum Hadoop-Ökosystem gehört, das in ähnlicher Weise wie SQL die Durchsicht von Daten ermöglicht. Die Frage einer einfachen Handhabung von Daten war das wichtigste für die ul. Rubież 46, 61-612 Poznań tel. +48 61 622 6950 www.apollogic.com Endnutzer, die sich nicht auf anders organisierten Informationen „bewegen” wollten. Daher blieben die Berater bei einem relativ einfachen Werkzeug, und zwar bei Apache Hive. Abb. 2. MapRecuce Job bei der Ausführung vom BASH-Skript Die gesamte Logik konnte man innerhalb von weniger als 6 Monaten implementieren und automatisieren. Dies scheint eine wirklich kurze Zeit zu sein, wenn man sich die riesige Menge an Daten anschaut, mit denen die Apollogic-Mitarbeiter zurechtkommen mussten. Trotz vieler Kompliziertheiten wurde das Projekt zu solch einer Phase erfolgreich gebracht, dass alle Prozesse fast automatisch durchgeführt wurden. Ihre Spuren waren in Form von Logs leicht erreichbar. Als Dankeschön erhielt das Apollogic-Team Informationen, dass das gesamte Projekt, das die Big-Data-Technologie verwendete, wesentlich dazu beigetragen hat, dass die Geschwindigkeit der Ergebnisse schneller wurde. Die Leichtigkeit beim Verbinden von Daten aus verschiedenen Quellen ermöglichte den Analysten ihre Visualisierung auf eine äußerst freundliche Weise. Die Plattform erlaubte dem Unternehmen, sich die Daten näher anzuschauen und einen schnelleren Zugang auf die Daten zu haben, so dass sich die Mitarbeiter mehr auf das Geschäft konzentrieren konnten, anstatt auf die kontinuierliche Integration aufpassen mussten. Dank der Nutzung der Big-Data-Technologie (des Hadoop-Ökosystems) sammelte das gesamte Projekt Informationen aus verschiedenen Quellen in einen Bereich vom "Data Lake." Diese Daten waren für Analysten im Werkzeug für die Qlik Sense-Visualisierung verfügbar. Die gleichen Informationen waren auch für fortgeschrittene Anwender durch SAS erreichbar. Das Projekt hat dazu beigetragen, Analysen früher 27 Tage zu erhalten, als vor der Implementierung von Big Data-Technologien. Fast einen Monat früher konnte man prädiktive Analysen in Bezug auf die Bestimmung der globalen Vertriebsanalyse erhalten. Es ist schwierig, die Vorteile für das Unternehmen im Detail zu schätzen, aber fast einen Monat Unterschied in Bezug auf die Gewinnung von Ergebnissen ist beeindruckend. ul. Rubież 46, 61-612 Poznań tel. +48 61 622 6950 www.apollogic.com Abb. 3. Qlik Sense-Nutzung für die verarbeiteten Daten Dieses Beispiel zeigt, dass die geschickte Umsetzung von der Big-Data-Technologie greifbare Vorteile bringen kann. Diese Umgebung verändert sich sehr schnell. Man muss mit den aktuellen Trends auf dem Laufenden sein und bestimmte Fähigkeiten haben, um mit dem Fortschritt Schritt zu halten. Heute, dank der derzeit verfügbaren Technologie, könnten einige Aspekte des beschriebenen Projekts auf eine effizientere Weise durchgeführt werden. Wahrscheinlich würde die Nutzung der neuesten Technologien wie Apache Spark, die Prozessdaten im Speicher anstatt auf der Festplatte verarbeiten, zu noch spektakuläreren Ergebnissen führen. Bereits heute zeigen zahlreiche Experimente, dass der Unterschied zugunsten von Apache Spark beträchtlich ist. Wir hoffen, dass wir in naher Zukunft auch in der Lage sein werden, diese Lösung für solche Datenmengen, an denen wir jetzt arbeiten, zu implementieren. ul. Rubież 46, 61-612 Poznań tel. +48 61 622 6950 www.apollogic.com