Big Data Discovery + Advanced Analytics = Datengetriebene Innovation! Harald Erb ORACLE Deutschland B.V. & Co. KG, Frankfurt/Main Schlüsselworte Information Management, Architektur, Data Lab, Sandbox, Oracle Big Data Discovery, Oracle Advanced Analytics, Oracle Data Mining (ODM), Oracle R Enterprise (ORE), Oracle Data Integrator (ODI) Einleitung Die Umsetzung von explorativen Analysen und ganzen Datenprojekten muss man nicht zwangsläufig den sog. Data Scientists allein überlassen werden. Daten- und Tool-Komplexität im Umgang mit Big Data sind keine unüberwindbaren Hürden mehr für die Teams, die heute im Unternehmen bereits für Aufbau und Bewirtschaftung des Data Warehouses sowie dem Management bzw. der Weiterentwicklung der Business Intelligence-Plattform zuständig sind. In einem interdisziplinären Team bringen neben den technischen Rollen auch Fachanwender und Business Analysten von Anfang an ihr Domänenwissen in das Datenprojekt mit ein, in dem sie bei der Präzisierung der analytischen Aufgabenstellung, Erforschung neuer Datenquellen sowie bei Modellerstellung und –validierung helfen. Die Wissensvermittlung und Anwendbarkeit der im Datenprojekt neu gewonnen Erkenntnisse müssen schließlich im Tagesgeschäft verprobt, den betroffenen Geschäftseinheiten in Unternehmensorganisation vermittelt bzw. in (intelligentere?) Unternehmensprozesse integriert werden. Der nachfolgende Artikel bzw. Vortrag orientiert sich bei dem Data Lab-Konzept an der Oracle Information Management Reference Architecture [1] und vermittelt technische Aspekte anhand der aktuellen Oracle Big Data Lite Developer VM, die für jeden nachvollziehbar sind [2]. Datengetriebene Innovation – am Beispiel von Oracle MoviePlex Inc. Innerhalb der Oracle Big Data Lite Developer VM befindet sich eine Beispielanwendung „MoviePlex“, die eine Video-Streaming Website simuliert und ihren Online-Kunden auf Grundlage ihres Sehverhaltens individuell Filme empfiehlt. Echtzeitinformationen zu Kundenprofilen, angebotenen Filmen, Filmempfehlungen liefert im Hintergrund eine Oracle NoSQL-Datenbank. Klick- und Bestellverhalten der Benutzer werden bei dieser webbasierten Applikation aufgezeichnet und die dabei entstehenden Logdateien in einem Hadoop Distributed File System (HDFS) zunächst gesammelt und zur weiteren Verwendung bereitgestellt. Das fiktive Unternehmen, das man sich hinter der MoviePlex-Simulation vorstellen kann, besäße keine stationären Ladengeschäfte und würde seine Umsätze ausschließlich online generieren. Analysen rund um alle Online-Aktivitäten hätten eine stetige Optimierung des Online-Streaming Dienstes, der personalisierten Kundenansprache, Neugewinnung von Abonnenten, Kostenersparnis, etc. zum Ziel. Entsprechend dürfte man von der MoviePlex-Organisation erwarten, dass ein umfassendes Reporting bzw. eine Business Intelligence(BI) und Enterprise Performance Management-Lösung (EPM) wie in Abb. 1 im Einsatz sind. Die Geschäftsleitung der MoviePlex Inc. wird bei der Findung neuer Geschäftschancen, dem Erschließen neuer Märkte, Erfindung neuer Produkte/Services sowie dem „besseren Verstehen“ ihrer Abonnenten sehr wahrscheinlich auch immer wieder Datenexperimente und neu zu entwickelnde Modelle beauftragen, die durch ein dediziertes Team in Form Datenprojekten umgesetzt werden. In Abb. 1 ist hierfür ein sog. Analytical Competence Center (ACC) als organisatorische Einheit dargestellt, das i.d.R. sehr nah an der Entscheiderebene angesiedelt und mit Hinblick auf Aufgabenstellung und Arbeitsweise nicht mit einem BI Competence Center (BICC) vergleichbar ist. Im Erfolgsfall liefert ein durch das ACC geführtes Datenprojekt als Ergebnis neue Erkenntnisse über bislang unbekannte fachliche Zusammenhänge, trägt zur Entwicklung neuer Produkte/Services bei, minimiert die Kundenabwanderung, liefert sowohl den Business Analysten als auch Entscheidern präzisere Informationen oder macht Geschäftsprozesse intelligenter. Abb. 1: Datengetriebene Innovationen bei der fiktivien MoviePlex Inc. Schlüsselrollen für die Durchführung eines Datenprojekts » » » » Projektsponsor: Oft verantwortlich für die Entstehung des Projektes, gibt den Impuls und definiert die zu lösende Aufgabenstellung bzw. das zu bearbeitende Geschäftsproblem. Projektfinanzierung, Zielvorgaben, Priorisierung und Meßgrößen für die Ergebnisbewertung werden hier ebenfalls festgelegt. Fachexperte/Domainspezialist: Personen, die das Fachgebiet verstehen und üblicherweise auch von den Ergebnissen eines solchen Projektes profitieren. Sie beraten das Team hinsichtlich des Projektkontextes, welchen Mehrwert die angestrebten Ergebnisse liefern sollen und wie diese später im Erfolgsfall operationalisiert werden können. Häufig nehmen Fachverantwortliche, Business Analysten oder Line Manager solche Rollen ein. Projektmanager: Stellt sicher, dass wichtige Meilensteine und Ziele während des Projektverlaufs zeitgerecht und in der erwarteten Qualität erreicht werden. Verhandelt und organisiert möglichst vor Projektbeginn die Bereitstellung zusätzlicher Ressourcen. Business Intelligence Analyst: Unterstützt das Projekt einerseits mit Fachwissen zu den Geschäftsbereichen und tiefgehendes Verständnis zu Key Performance Indikatoren (KPI), den Inhalten der vorhandenen BI-Lösung und mit den zugrundeliegenden Datenquellen. Sofern in der Unternehmensorganisation etabliert, kann diese Rolle von einem Mitglied des BI Competence Centers (BICC) wahrgenommen werden –mit dem Vorteil, dass das BICC von Anfang an involviert ist und zu Projektende aktiv bei der Operationalisierung der Analyseergebnisse mitwirken kann. » » » Data Engineer: Verantwortet Planung und Design der Analytics Sandbox und von Big DataArchitekturen, setzt hoch-performante Hadoop-Anwendungen auf Java-Basis um. Ferner gehört die Datenextraktion aus bestehenden Systemen sowie die Datenaufnahme und –aufbereitung in der Analytics Sandbox zu den Aufgabenschwerpunkten. Als Lead-Developer entwickelt und berät diese Funktion auch das Projektmanagement in technischen Fragen. Datenbank Administrator: Für die im Datenprojekt benötigte Analytics Sandbox provisioniert und konfiguriert der DBA gemäß Anforderung die für die Datenexperimente benötigte Datenbank. Zu den Verantwortlichkeiten gehören hier auch das Einräumen von Zugriffsrechten für wichtige Quellsysteme, Tabellen, Repositories unter Einhaltung vorgegebener Sicherheitsstufen. Data Scientist: Bringt zur Lösung des gestellten Geschäftsproblems bzw. Aufgabenstellung für das Datenexperiment das Fachwissen zur Auswahl der passenden analytischen Techniken mit, leitet die Datenmodellierung sowie die Ausführung und Ergebnisüberprüfung der analytischen Methoden an. Die meisten der oben skizzierten Rollen sind nicht neu und können aus dem bestehenden Unternehmenspersonal direkt oder nach Durchlaufen eines Weiterentwicklungspfades intern besetzt werden. Die Rollen „Data Engineer“ und „Data Scientist“ sind bekanntermaßen im Zuge des Big Data Hypes populär geworden und Personen mit entsprechenden Skill-Profilen und echter Praxiserfahrung, (vgl. hierzu [3]) sind ggf. extern zu rekrutieren. Während die internen Mitarbeiter auf die Schnelle nicht mit zusätzlichem Statistik Know-how „geimpft“ werden können, so kann Oracle mit technischen Innovationen ein Stück weit dazu beitragen, die bestehende Mannschaft zumindest für die Mitarbeit in Data Labs und bei Datenprojekten zu befähigen. In Abb. 2 ist dargestellt, wie diese Unterstützung mit Blick auf das MoviePlex-Beispiel aussehen kann. Mit der Big Data Appliance kann quasi schlüsselfertig eine Big Data Umgebung zur Erweiterung der bestehenden Data Warehouse und BI-Systemlandschaft bereitgestellt werden. Das langjährig erworbene SQL- und ETLKnow how der Mitarbeiter ist weiterhin auch im Big Data Umfeld wertvoll. SQL hat sich z.B. als standardisierte Abfragesprache durchgesetzt und man hat heute die Wahl, ob man Daten direkt im HDFSCluster via Hive-Tabellen oder aus der Oracle 12c Datenbank mittels External Tables via Oracle Big Data SQL abfragen möchte. ETL-Spezialisten nutzen weiterhin den Oracle Data Integrator (ODI, nicht im Bild dargestellt) zusammen mit der Big Data Option für ODI 12c, um die Datenbewirtschaftung zwischen dem Big Data Ecosystem und den relationalen Datenbanken, Service-orientierten Architekuren, Hostsystemen, etc. zu bewerkstelligen. Ob und in welchem Maße Big Data-Komponenten, Oracle Connectors für Hadoop, etc. eingesetzt werden, liegt im Ermessenspielraum der Architekten. Die Fachexperten im Team bekommen mit dem Werkezeug Oracle Big Data Discovery ebenfalls direkten Zugang zu den in Hadoop liegenden neuen und vielleicht noch unbekannten Daten und können sie in der Frühphase eines Datenexperiments selbst auf ihre Datenqualität inspizieren und inhaltlich bewerten. Abb. 2: Architekturskizze zum MoviePlex Inc. Szenario Die Phasen eines Data Analytics Lifecycle im Überblick Es gibt eine Reihe von Ansätzen zur erfolgreichen Durchführung von Datenanalysen, z.B. der „Cross Industry Standard Process for Data Mining“ (CRISP-DM) [4] oder Tom Davenport’s DELTA-Framework [5] und weitere Quellen, die dem in [6] beschriebenen Data Analytics Lifecycle näher beschreiben. Der Analyseprozess, der innerhalb eines Datenprojekts durchlaufen wird, lässt sich in sechs Phasen unterteilen und wie in Abb. 3 als Kreislauf darstellen. Dabei sind bei den Phasen 1 bis 4 mehrere Iterationen möglich, bis die Voraussetzungen für den Übergang und die weitere Arbeit in der nächsten Analysephase gegeben sind. Abb. 3: Bis zum Ende eines Datenprojekts durchläuft ein typischer Analyseprozess manche Phasen mehrfach Die Phasen im Analyseprozess sind im Einzelnen: Phase 1 – Discovery: Von der Entscheiderebene kommt neben dem Auftrag zum Datenprojekt und der Bewilligung der notwendigen Resourcen auch die klar formulierte Zielsetzung und die Definition der Erfolgskriterien. Das aus dem Analytical Competence Center (ACC) heraus gebildete Projektteam muss sich über die Aufgabenstellung klar werden und verstehen, woraus das Problem oder die künftig mit Daten getroffene Entscheidung geanu besteht. Dabei ist es u.a. wichtig, sich das notwendige Wissen zu den entsprechenden Geschäftsbereichen zusammen mit der relevanten Historie anzueigenen. Ferner ist zu prüfen, ob es in der Vergangenheit schon ähnliche Vorhaben/Projekte gab und wie dort die Vorgehensweise und Ergebnisse waren. Die Aufgabenstellung an sich sollte aus mehrenen Perspektiven betrachtet werden, Alternative Sichtweisen zum Thema sind ebenfalls zu prüfen. Neben der Aufgabenstellung muss durch das ACC oder das Projektteam selbst geprüft und bewertet werden, welche Ressourcen mit Blick auf Personal, Technik, Bearbeitungszeit und natürlich: Daten zur Unterstützung des Vorhabens zur Verfügung stehen. Phase 2 – Data Preparation: Diese Projektphase setzt als Arbeitsgrundlage eine Analytics Sandbox voraus, in bzw. mit der Datenexperimente während des Projektverlaufs durchgeführt werden können, ohne dabei die unternehmenskritischen Produktivsysteme bei der Abwicklung des operativen Tagesgeschäftes zu stören. In Abb. 4 ist, gemäß der Konzeptsicht der Oracle Information Management Reference Architecture [1], daher das Data Lab mit der darin enthaltenen Analytical Sandbox durch die „Line of Governance“ getrennt von der restlichen IT-Infrastruktur eingezeichnet. Das bedeutet damit aber nicht, dass hier ohne jegliche Einschränkungen mit Daten herumexperimentiert und dabei Datenschutzrichtlinien bzw. die zweckgebundene Nutzung der Daten ignoriert werden darf. Die technische Ausstattung der Analytical Sandbox bzgl. Datenspeicherung (z.B. Einsatz eines Hadoop-Clusters, einer relationalen und/oder NoSQL-Datenbank, das analytische Toolset) sollte vorab nicht zu sehr reglementiert sein und sich eher an der zu lösenden Aufgabe, dem zu erwarteten Datenvolumen und besonders an der Verschiedenartigkeit der Daten orientieren. Abb. 4: Data Lab mit Analytical Sandbox und eigenem Toolset - separiert von der unternehmenskritischen IT Ergebnis der Discovery Phase ist, aufgrund der geklärten Aufgabenstellung und Analyse der fachlichen Hintergründe, ein analytischer Plan mit einer Aufstellung der benötigten Daten und der Information, welche davon unternehmensintern oder aber auch extern zu beschaffen sind. Ohne an dieser Stelle die möglichen organisatorischen (Kontaktaufnahme mit Data Ownern, Data Stewards, Berücksichtigung von Datenschutzaspekten) und finanziellen Herausforderungen verschweigen zu wollen, fokussiert sich dieser Artikel nun auf die Datenprovisionierung der Analytical Sandbox(es). Das Konzept dafür zeigt Abb. 5 mit der Data Factory. Sie übernimmt künftig neben der Datenversorgung der BI-Plattform nun auch die agile Versorgung von 1...n Sandboxes. Dabei werden vom Data Engineer über ETL- oder ELT-Prozesse die benötigten Datenkopien von dem unternehmensinternen Enterprise Information Store und dem Data Reservoir in die Sandbox des Data Labs transferiert, so dass das Team die Arbeit mit den Datenexperimenten beginnen kann. Aufbau und Dimensionierung einer Analytical Sandbox kann von Projekt zu Projekt variieren und man darf davon ausgehen, dass eine Analytical Sandbox eher groß ausfallen wird. Denn einerseits werden dort Rohdaten, aggregierte Daten oder andere Datentypen im Original gespeichert und andererseits entstehen aufgrund der Experimente Datenkopien oder durch Datenanreicherungen neue Data Sets. Abb. 5: Datenversorgung der Analytical Sandbox(es) durch die Data Factory Mit Hinblick auf das Movie-Plex-Beispiel läßt sich in der Oracle Big Data Lite Developer VM [2] im vorinstallierten Oracle Data Integrator (ODI 12c) anhand verschiedener Beispiel-Mappings gut ausprobieren, wie mit dem neuen Oracle Data Integrator Application Adapter for Hadoop [7] die relationale Oracle-Welt mit dem Hadoop Ecosystem zusammenarbeiten kann. Im Hintergrund helfen dabei – wenn der Data Engineer den Technologie-Mix entsprechend bestimmt – die Oracle Big Data Connectors [8], Oracle Big Data SQL [9] oder kommen auch Hadoop-Komponenten direkt zum Einsatz. In Abb. 6 ist es z.B. Apache Pig, das ein Hadoop MapReduce-Programm im Kontext eines ODI-Mappings ausführt. Abb. 6: Beispiel-Mapping in ODI 12c, das Hive-Tabellen liest und nach einer Pig-Transformation befüllt Mit einem bereits im Einsatz befindlichen Datenintegrationswerkzeug, das ggf. um Fähigkeiten für die Arbeit mit Hadoop etc. „aufgerüstet“ werden muss, ist es also möglich, das noch recht neue Konzept der Analytical Sandboxes zu unterstützen. Die Vorteile sind dabei nicht zu unterschätzen: Die Nachvollziehbarkeit der Informationsflüsse in Richtung Data Reservoir und Analytical Sandboxes bleibt gewahrt und beschränkt sich nicht nur auf die Datenbewirtschaftung für das Data Warehouse. Ferner hilft das Know-how der für die Datenintegration zuständigen Mitarbeiter auch bei der Umsetzung des neuen Konzepts und bei der Zusammenarbeit mit den Data Engineers und Data Scientists im Rahmen der laufenden Datenprojekte. Ist die Datenbereitstellung in der Analytical Sandbox erfolgt, kann die Datenkatalogisierung und -inspektion mit dem Werkzeug Oracle Big Data Discovery erfolgen. Abb. 7 gibt einen Eindruck, wie relevante Data Sets im Rahmen eines fiktiven MoviePlex-Datenprojektes gut organisiert und leicht auffindbar sein können. Abb. 7: Grafische Übersicht zu den in Big Data Discovery für weitere Analysen verfügbaren Data Sets In Absprache mit bzw. durch das DBA-Team lassen sich in Oracle Big Data Discovery entsprechende Data Sources für Analysen mit unternehmensinternen Daten per JDBC-Zugriff einrichten und durch das Team im Data Lab nutzen. Ferner erlaubt Oracle Big Data Discovery den direkten Upload lokaler Dateien (csv-/XLSFormat) um schließlich eine Auswahl von allen zur Verfügung stehenden Data Sets in einem Projekt zusammenfassen zu können, wie es in Abb. 8 anhand des Projekts „MoviePlex Insight“ dargestellt ist. Abb. 8: Organisation aller benötigten Data Sets zu einem Projekt in Oracle Big Data Discovery Innerhalb eines Oracle Big Data Discovery Projektes müssen die einzelnen Data Sets nun von Fachexperten und Data Scientists intensiv inspiziert werden. Im Werkzeug selbst geschieht das mit der Funktion „Explore“ (siehe Abb. 9), die alle Attribute samt ihrer Wertausprägungen in Abhängigkeit vom jeweiligen Datentyp visualisiert. Abb. 9: Ein Data Set interaktiv auf Inhalte, Datenvollständigkeit und –qualität hin inspizieren Während eines Datenprojekts ist die Inspektion und das Lernen über der Dateninhalte eine kritische und zeitraubende Aktivität. Oracle Big Data Discovery unterstützt diesen Arbeitsvorgang durch Visualisierung der Dateninhalte, interaktive Filtermöglichkeiten und Volltextsuche. Attribute mit Zeit- und Ortsinformationen können um zusätzliche Attribute angereichert werden, z.B. bekommt ein Datumsfeld zusätzliche Felder mit der abgeleiteten Jahres-, Monats- und Tagesangabe bzw. Geokoordinaten und IP-Adressen werden um zusätzliche Felder Land, Bundesstaat, Ort Postleitzahl/Postcode ergänzt. Die ergänzenden Attribute sind durch den Anwender direkt nutzbar und können genauso interaktiv von den Analytiker durchgesehen werden wie die Originaldatenfelder der zugrunde liegenden Quelltabelle oder –datei auch. Um den Prozess zu verstehen, wie in Oracle Big Data Discovery per Data Sampling, Profiling, Enrichment alle Data Sets für die Benutzer aufbereitet werden, empfiehlt sich neben der Lektüre der Produktdokumentation die anschauliche Übersicht zu Oracle Big Data Discovery in dem dreiteiligen Internet-Blog von RittmanMead [10]. Die Datenaufbereitung und die Verknüpfung jeweiligen Data Sets kann in Oracle Big Data Discovery innerhalb eines Projektes erfolgen. Mit der Funktion „Transform“ bekommt man jedes Data Set tabellarisch in einem Arbeitsblatt angezeigt, zwischen den Arbeitsblättern kann, ähnlich wie in MS Excel, stets gewechselt werden. Ein aufrufbares Dialogfenster (siehe Abb. 10 rechts unten: „Data Set Relationships“) erlaubt das Verknüpfen der einzelnen Data Sets über gemeinsame Attribute, die vom Benutzer zu bestimmen sind. Datentransformationen können spaltenweise vorgenommen werden. Oracle Big Data Discovery bietet für einfache Datenveränderungen ein 1-Click-Menü an, für das Gruppieren, Aufsplitten, Trennen und Löschen von Datenwerten stehen weitere einfach zu bedienende Eingabebereiche und für das Erstellen umfangreicherer Datentransformationen ein Editor zur Eingabe von Groovy-Skript-Code zur Verfügung. Jede einzelne vorgenommene Datentransformation wird in Oracle Big Data Discovery als eigenes Transformations-Skript in der Reihenfolge der Entstehung zwischengespeichert, das sich jederzeit einsehen und vom Benutzer wieder ändern läßt. Über eine Vorschaufunktion ist anhand der Echtdaten die Korrektheit jeder vorgenommenen Transformation überprüfbar. Abb. 10: “ETL-on-the-fly” ist in Oracle Big Data Discovery direkt auf Hadoop-Daten ausführbar Bei den oben beschriebenen Datenaufbereitungsaktivitäten sind die technischen Rollen im Projektteam federführend, Data Scientists und Fachexperten müssen aber unbedingt während der Dateninspektion bei den zahlreichen zu treffenden Entscheidungen beteiligt sein: Klärung der Datenquellen und welche Datenfelder daraus notwendig bzw. vernachlässigbar sind. Wie ist es um die Güte der Data Sets bestellt? Wie groß sind die Datenlücken und wie ist es um die Konsistenz bei einzelnen Datentypen und innerhalb des gesamten Datenmaterials bestellt? Oracle Big Data Discovery fördert hier die Zusammenarbeit im Team, per Berechtigungskonzept können innerhalb der Anwendung projektweise einzelnen Teammitglieder die erforderlichen Lese- und Schreibrechte eingeräumt werden. Stimmen schließlich Aufbau und Qualität, dann kann der Data Engineer per „Commit“-Befehl alle Änderungen auf den gesamten Datenbestand im HadoopCluster anwenden oder ein Data Set als Exportdatei bzw. als Hive-Tabelle im Hadoop-Cluster erzeugen. Phase 3 – Model Planning: Das Lernen über die Daten intensiviert sich in dieser Phase. Die zur Lösung der vorgegebenen Aufgabenstellung detailliert formulierte Hypothese beschreibt auch die Variablen, die das Ergebnis beinflussen. Anhand der gesammelten Informationen zu den zu untersuchenden Variablen beginnt das Analytics Team nun mehr über mögliche Zusammenhänge zwischen den Variablen zu lernen und wählt schrittweise die wichtigsten Variablen und ein passendes Modell zur Klassifizierung, zum Clustering, etc. der Daten aus. Unterstützt durch Werkeuge wie Oracle Big Data Discovery (aber auch Oracle Data Miner bzw. RStudio) kann das Analytics Team schon während der Aufbereitungsphase Datenexploration betreiben. Abb. 11 zeigt auf Basis der Oracle Big Data Lite Developer VM, wie der Analytiker mit dem sog. „Scratchpad“ von Oracle Big Data Discovery (links) oder mit wenigen Befehlen in RStudio, z.B. mit „summary()“, mehrere Datenfelder schnell und interaktiv untersuchbar sind. Abb. 11: Oracle Big Data Discovery „Scratchpad“ und RStudio erleichtern die Lernphase während des Datenprojekts Während der Modellauswahl konzentriert sich das Projektteam darauf, eine analytische Technik oder eine kleine Anzahl von „Modellkandiaten“ zu bestimmen und orientiert sich dabei am Geschäftsproblem bzw. der Aufgabenstellung, die es zu lösen gilt. Ein Modell selbst abstrahiert die Realität. Aus beobachteten Ereignissen der Wirklichkeit oder von Live-Daten versucht man Modelle zu konstruieren, die ein Verhalten auf Basis einer Reihe von Regeln und Bedingungen nachzuahmen. Bei den Disziplinen Machine Learning und Data Mining werden diese Regeln z.B in Techniken wie Classification, Association Rules und Clustering unterteilt. Unter Anleitung des Data Scientists kann das Projektteam die potentiell in Frage kommenden Techniken sichten und realisierbare Modelle für die Problemlösung identifizieren. Bezogen auf das fiktive Unternehmen MoviePlex Inc. und den in der Oracle Big Data Lite Developer VM enthaltenen Daten, werden nachfolgend einige Analyse-Beispiele mit R als freier Programmiersprache für statistisches Rechnen und statistische Grafiken gegeben. Abb. 12 zeigt z.B., wie in RStudio direkt auf die Oracle Datenbank via Oracle R Enterprise bzw. auf Hive-Tabellen via Oracle R Advanced Analytics for Hadoop zugegriffen und analysiert werden kann. Abb. 12: Analyse der MoviePlex-Daten in RStudio Während Oracle R Enterprise (ORE) die Datenbank um die Bibliothek der statistischen Funktionen der RProgrammiersprache erweitert und die Berechnung in die Datenbank verlagert, können R-Programmierer mit Oracle R Advanced Analytics for Hadoop (ORAAH) direkt im Hadoop Cluster die für statistische Berechnungen benötigten und im Hadoop Distributed File System (HDFS) gespeicherten Dateien heranziehen. Mehr Informationen zu beiden Technologien sind in den jeweiligen Datenblättern bzw. auf der jeweiligen Oracle Homepage nachlesbar. [11] und [12]. Data Scientists können also ihre vorhandenen REntwicklungskompetenzen und -Tools anwenden und gleichzeitig von der Vorteilen einer skalierbaren Enterprise-Umgebung auf Basis von Oracle Software/Hardware profitieren. Phase 4 – Model Building: Nachdem das Analytics-Team eine genaue Vorstellung davon bekommen hat welches Modell ausprobiert bzw. verwendet werden soll, geht es nun in die konkrete Umsetzung. Dabei sind Data Sets für Training, Test und Produktivsetzung für das neue analytische Modell zu entwickeln. In dieser Phase ist es wichtig sicherzustellen, dass Trainings- und Testdaten robust genug für die Anwendung der vorgesehen analytischen Techniken und das ausgewählte Modell sind. Das Team muss sich während der Arbeit fragen: » » » » » » » Behält das mit den Testdaten verprobte Modell seine Gültigkeit und ist dabei noch präzise genug? Machen Modell-Output bzw. die erzielten Aussagen für die Fachexperten generell und im Geschäftskontext Sinn? Macht auch die gewählte Parametrisierung für das angepasste Modell aus fachlicher Perspektive Sinn und ist das Modell ausreichend präzise für die Zielerreichung des Datenprojekts? D.h. kann die Fehlalarmrate ("False positives" und "False negatives") möglichst gering gehalten werden Können (später untragbare) Fehler bei Modellbildung und Anwendung der analytischen Techniken ausgeschlossen werden? Wird ggf. weiteres Datenmaterial oder zusätzlicher Modell-Input benötigt? Vorausschauend betrachtet: Wie ist das gefundene Modell in produkiven Laufzeitumgebungen technisch realisierbar und ausführbar? Ist eine weitere Iteration in der Modell Planning Phase notwendig, weil eine andere Modellvariante zur Lösung des Geschäftsproblems als Alternative in Erwägung gezogen werden muss? Einige Einsatzbeispiele mit R und RStudio wurden bereits oben anhand des MoviePlex-Beispiels gegeben, RSkripte mit Code-Beispielen finden sich für eigene Tests in der Oracle Big Data Lite VM. Neben Oracle R Enterprise gehört als zweite Komponente Oracle Data Mining (ODM) zur Oracle Advanced Analytics Datenbankoption und stellt schon seit vielen Jahren eine umfassende Auswahl an In-Database Algorithmen für vielfältige Data Mining Aufgabenstellung bereit: Z.B. für Klassifizierung, Regressionsanalysen, Anomalieerkennung, Merkmalsextrahierung, Clustering, Warenkorbanalysen, etc. Neben einer API und SQL-Schnittstelle gibt es eine graphische Benutzeroberfläche, mit der Data Scientists und Data Engineers Analyse-Workflows erstellen können, in dem sie innerhalb des Oracle SQL Developer Werkzeugs den darin eingebetteten Data Miner aufrufen. Abb. 13 gibt anhand eines weiteren MoviePlex-Beispiels einen Eindruck, wie sich z.B. mit Textmining und Cluster-Bildung Ähnlichkeiten bei populären Filmen bestimmen und möglicherweise später in der MoviePlex Website für bessere Empfehlungen nutzen lassen. Abb. 13: MoviePlex Data Mining Workflow mit dem Ziel bessere Filmempfehlungen Phase 5 – Communicate Results: Während und besonders zum Ende des Datenprojekts muss das Analytics Team (Zwischen-)Ergebnisse nachvollziehbar dokumentieren, die Zielvorgaben für das Projekt mit den erzielten Resultaten vergleichen und für das jeweilige Zielpublikum in Form einer Präsentation oder einem anderen gewünschten Format aufbereiten. Oracle Big Data Discovery bietet für die Darstellung des im Verlauf des Projekts untersuchten Datenmaterials mit der gleichnamigen Funktion „Discover“ einerseits die Möglichkeit zum Aufbau interaktiver Dashboards an. Statt starrer Screenshots können die Fachexperten im Team – oder auch andere interessierte Business Analysten – über einen sicheren Zugang mit einer intuitiven Benutzeroberfläche selbständig eigenen Ideen nachgehen, bereits gefundene Erkenntnisse validieren, usw. Abb. 14 zeigt anhand des MoviePlex-Beispiels, wie z.B. eine nähere Kundenbetrachtung über drei miteinander verknüpfte Data Sets (Customer List, Application Logs, Session Information) realisiert sein kann. Abhängigkeiten und Auffälligkeiten können durch frei definierbare Abfragefilter und interaktive Visualisierungen (Karte für Ortsinformationen, Zeitleiste zum Vergleich mehrerer Attribute und Variablen über die Zeit) „aufgespürt“ und nachverfolgt werden. Über eine Lesezeichen-Funktion erlaubt Oracle Big Data Discovery das Speichern/Teilen eigener Filterkriterien, mit der Galerie-Funktion lassen sich die wesentlichen Analyseschritte, Dashboard-Seiten zu einem Analysepfad bzw. einer Story zusammenfassen und um eigene Kommentare und Hinweise ergänzen. Abb. 14: Oracle Big Data Discovery ermöglicht Datenerkundung für alle am Datenprojekt beteiligten Rollen Die Interpretation der Ergebnisse der statistischen Analyse erfolgt unter Berücksichtigung des betroffenen Fachgebietes, das von der Aufgabenstellung betroffen ist. Von großer und fachübergreifender Wichtigkeit ist generell die Umsetzung von Zahlen in Sprache, die treffsichere sprachliche Umsetzung der gewonnenen Ergebnisse, die am besten wissenschaftliche Kriterien erfüllt. Ohne den Rückbezug auf die im Verlauf des im Erkenntnisprozesses aufgestellten Hypothesen und Fragestellungen bleibt die durchgeführte Analyse ohne Relevanz. In der statistischen Auswertung werden auch die meisten Schwächen einer statistischen Analyse sichtbar. Zu oft bleibt nur die reine Zahlendarstellung und zu wenig richtet sich das Augenmerk auf eine klare sprachliche Ergebnisformulierung. Sollen die Ergebnisse des analytischen Modells, z.B. eine Kundensegmentierung, eine Demand-Analyse oder Micro-Targeting nachvollziehbar dargestellt werden, besteht die Herausforderung für das Analytics Team darin, die gewonnenen Erkenntnisse für die Business Anwender zu „übersetzen“ (siehe hierzu Abb 15). Für die Auftraggeber des Datenprojekts sowie die profitierenen Fachabteilungen ist der durchlaufende Analyseprozess eine Black Box (und soll es auch bleiben), vor der operativen Umsetzung der Resultate benötigen sie aber Gewissheit über die Korrektheit der Ergebnisse sowie eine klare Nutzen- und Risikobetrachtung, bevor die nächsten Schritte eingeleitet werden. Abb. 15: Datenvisualisierung allein reicht nicht aus – Datenverständnis ist das Ziel der Ergebnisvermittlung Phase 6 – Operationalize: Abb. 16 fasst aus Oracle-Perspektive einige wichtige in diesem Artikel besprochene Aktivitäten und mit Oracle Big Data Discovery und Oracle Advanced Analytics ein mögliches Toolset zusammen, das während eines Datenprojekts im Data Lab zum Einsatz kommen könnte. Auf der Zielgeraden angekommen, ist nun die Einbettung der gefundenen Modelle in die Entscheidungsprozesse des Unternehmens bzw. der Organisation zu bewerkstelligen. D.h. bedeutet einerseits, dass sich die in der Analytical Sandbox erprobten Modelle künftig im Tagesgeschäft beweisen müssen und damit in der Produktionsumgebung des Unternehmens zu verbauen sind. Zum anderen muss ggf. Modellpflege betrieben werden, falls die Modellgenauigkeit nachlassen sollte. Für das technische „Verbauen“ der neuen Erkenntnisse gibt es allein mit Oracle-Technologien zahlreiche Optionen, deren einzelne Besprechung den Rahmen dieses Artikels sprengen würde. Die anfangs erwähnte Oracle Information Management Reference Architecture [1] gibt dafür aber wertvolle Hinweise für den Übergang von der Analytical Sandbox bis hin zur Enterprise IT. Abb. 16: Einsatz, Wechselwirkung u. Output von Oracle Big Data Discovery & Oracle Advanced Analytics im Data Lab Die Interessen bzw. typischen zu liefernden Arbeitsergebnisse sind nachfolgend nach den beteiligten Rollen in einem Datenprojekt gegliedert: » » » » » » Projektsponsor: Interessiert sich für die Bezifferung der erzielbaren Mehrwerte (Return-on-Invest), der möglichen Risiken und wie die Projektergebnisse in die Organisation getragen werden können Fachexperte/Domainspezialist: Möchte Vorteile und zu erwartende Auswirkungen zu den neu erlangten Erkenntnissen bestimmen Projektmanager: Ermittelt, ob das Projekt zeitgerecht abgeschlossen, vorgegebene Budgets eingehalten und die Ziele eingehalten wurden Business Intelligence Analyst: Interessiert sich dafür, welche Auswirkungen die neu gefundenen Erkenntnisse für die Anpassung/Erweiterung der produktiven DWH- und BI-Systeme mit Bezug auf Datenmodell, BI Symantiklayer, Dashboards, Standardberichte, usw. haben. Data Engineer und Datenbank Administrator: Stellt für die Wiederverwertung den im Projekt geschaffenen Code zusammen mit einem technischen Dokument Verfügung Data Scientist: Stellt ebenfalls Code, eine Modellbeschreibung/-erklärung für die unterschiedlichen Interessensgruppen im Unternehmen bereit. Dabei sollte z.B. bei dem Briefing für die Entscheider schneller das Ergebnis samt Bezifferung von Mehrwerten und Risiken für das Unternehmen zur Sprache kommen. Während einer solchen Präsentation stehen analytische Details im Hintergrund und die Verwendung von bewährten Visualisierungen (Balkendiagramme) ist hier empfehlenswert. Für eine Ergebnispräsentation vor Fachexperten und anderen Kollegen, mit analytischen/technischen Aufgaben betraut sind, spielen Details zum Modell mit entsprechenden Visualisierungen (ROCKurven, Histogramme, Density Polts, ..., konkrete Code- und Implementierungs Beispiele eine übergeordnete Rolle. Abb. 17 veranschaulicht schließlich, wo sich „Datengetriebene Innovation“ im täglichen Geschäft wiederfinden kann. Z.B. stellte die Oracle BI-Plattform neu verfügbare Kunden-Scores bereit, Call Center-Agenten bekommen in der operativen Anwendung Echtzeit-Empfehlungenen angeboten oder Abonnenten erfahren eine verbesserte „Customer Experience“ im Online-Angebot der MoviePlex Inc.! Mit dem Oracle Exa* Product Stack lassen sich die oben beschriebenen Szenarien durch Einsatz von Oracle Big Data SQL, Inmemory-Lösungen und eine abgestimmte Software/Hardware-Architektur weiter beschleunigen. Abb. 17: Resultat: Datengetriebene Innovation = bessere Entscheidungen, intelligente Prozesse & neue Produkte/Services Weiterführende Informationen [1] Oracle White Paper - Information Management and Big Data, A Reference Architecture, 2014 Link [2] Oracle Big Data Lite Developer VM, Version 4.2.1 – Homepage und Download via Oracle Technology Network Link [3] Beispiel “The Home of Data Science” Website: www.kaggle.com [4] Cross Industry Standard Process for Data Mining“ (CRISP-DM) Wikipedia Link [5] T.H. Davenport, J.G. Harris and R. Morison, „Analytics at Work: Smarter Decisions, Better Results“, 2010, Harvard Business Review Press [6] D. Dietrich, B. Heller and B. Yang, „“Data Science and Big Data Analytics: Discovering, Analyzing, Visualizing and Presenting Data“, 2015, Wiley & Sons [7] Mehr Informationen zu dem Oracle Data Integrator Application Adapter for Hadoop Link [8] Mehr Informationen zu den Oracle Big Data Connectors Link [9] Mehr Informationen zu Oracle Big Data SQL Link [10] 3-teiliger Blog von RittmanMead: Introducing Oracle Big Data Discovery… Part 1: The Visual Face of Hadoop Link Part 2: Data Transformation, Wrangling and Exploration Link Part 3: Data Exploration and Visualization Link [11] Mehr Informationen zu Oracle R Enterprise (ORE) Link [12] Mehr Informationen zu Oracle R Advanced Analytics for Hadoop (ORAHH) Link [13] Mehr Informationen zu Oracle Data Mining (ODM) Link Kontakt: Harald Erb ORACLE Deutschland B.V. & Co. KG Robert-Bosch-Straße 5 D-63303 Dreieich Telefon: Fax: E-Mail Internet: LinkedIn: +49 (0) 6103-397 403 +49 (0) 6103-397 397 [email protected] www.oracle.com www.de.linkedin.com/in/haralderb