Community-orientiert. Apache Hadoop Apache Hadoop Anwendungsmuster April 2013 2013 Hortonworks Inc. http://www.hortonworks.com
Big Data: Apache Hadoop auf den Punkt gebracht Um den Begriff Big Data wird im Moment sicherlich ausreichend Rummel gemacht. Anbieter und Unternehmen betonen gleichermaßen die transformative Wirkung, die durch die Ableitung verwertbarer Erkenntnisse aus der Datenflut, die unsere tägliche Realität darstellt, erzielt werden kann. Aber bei dem ganzen Rummel mangelt es oft an einer dringend erforderlichen praktischen Anleitung. Warum ist Apache Hadoop die Technologie, die Big Data am häufigsten unterstützt? Wie passt es in die aktuelle Umgebung aus Datenbanken und Data-Warehouses, die bereits im Gebrauch sind? Und gibt es typische Anwendungsmuster, mit denen wir einen Teil der vorgegebenen Komplexität herausfiltern und letztendlich alle die gleiche Sprache sprechen können? Als Unternehmen, das komplett auf die Entwicklung, den Vertrieb und die Unterstützung von Apache Hadoop für Unternehmenskunden ausgerichtet ist, haben wir das Glück, über einen einzigartigen Ausgangspunkt zu verfügen. Das Kernteam bei Hortonworks umfasst die ursprünglichen Architekten, Entwickler und Anwender von Apache Hadoop sowie die Anwendung von Apache Hadoop bei Yahoo. Durch diese Erfahrung hatten sie das Privileg mitanzusehen, wie sich Hadoop zur technologischen Stütze so vieler Big-Data-Projekte entwickelte und das ermöglichte uns die Beobachtung bestimmter Muster, die unserer Meinung nach die Konzepte in Zusammenhang mit Hadoop deutlich vereinfachen. Einige dieser Muster wollen wir hiermit weitergeben. Wo passt Hadoop rein? Unternehmensanwender entwickeln schon seit Jahren analytische Anwendungen; was soll also der ganze Wirbel um Big Data? Nahezu jedes Unternehmen verfügt heutzutage über analytische Anwendungen und nutzt diese auf täglicher Basis. Diese Anwendungen werden relativ gut verstanden und sind in der nachstehenden Grafik erfasst. Der allgemeine Verlauf sieht in etwa so aus und ist in Abbildung 1 unten dargestellt: Daten stammen aus einer Reihe von Datenquellen am häufigsten aus Unternehmensanwendungen wie ERP, CRM oder kundenspezifischen Anwendungen, die das Unternehmen fördern Diese Daten werden extrahiert, umgewandelt und in ein Datensystem hochgeladen: ein relationales Datenbankmanagementsystem (RDBMS), ein Enterprise Data Warehouse (EDW) oder sogar ein System zur massiv parallelen Datenverarbeitung (MPR) Analytische Anwendungen entweder als vorkonfigurierte (z. B. SAS) oder kundenspezifische Lösung verweisen dann auf die Daten in diesen Systemen, um es den Anwendern zu ermöglichen, Erkenntnisse aus den Daten zu ziehen. Apache Hadoop Anwendungsmuster: Hortonworks Inc. 2013 Seite 2
Abbildung 1: Traditionelle Unternehmensdatenarchitektur Die Zeiten haben sich jedoch geändert. In jüngster Zeit haben sich Daten in dieser Umgebung explosionsartig vermehrt. Dabei handelt es sich nicht nur um die zusätzlichen Berichte von ERP- oder CRM-Systemen: Es ist eine völlig neue Datenkategorie, die niemand vorhersehen konnte, als diese Datensysteme ins Leben gerufen wurden. Es handelt sich um maschinengenerierte Daten, Sensordaten, Social-Media-Daten, Weblogs und andere derartige Datentypen, die exponentiell wachsen und dabei auch häufig (jedoch nicht immer) unstrukturiert sind. Das umfasst auch Daten, die zuvor als Informationen von geringem oder mittlerem Wert oder sogar als erschöpfte Daten betrachtet wurden zu teuer für die Speicherung und Auswertung. Es sind jedoch genau diese Arten von Daten, die das Gespräch von Datenanalyse auf Big-Data-Analyse bringen, da aus ihnen so viele Einblicke für einen geschäftlichen Vorteil gewonnen werden können. Daher sieht eine neu entstehende Datenarchitektur, der wir am häufigsten begegnen, in etwa wie die nachstehende Abbildung aus. Der Hauptunterschied besteht darin, dass Apache Hadoop das ursprünglich konzipiert wurde, um riesige Datenmengen für Unternehmen wie Yahoo, Google, Facebook und andere zu günstigen Preis zu speichern zunehmend in Unternehmensumgebungen eingeführt wird, um diese neuen Datentypen auf effiziente und wirtschaftliche Weise zu verarbeiten. Apache Hadoop Anwendungsmuster: Hortonworks Inc. 2013 Seite 3
Abbildung 2: Die neu entstehende Big Data-Architektur Kernpunkt: Hadoop ist kein Ersatz für die traditionellen Datensysteme zur Erstellung analytischer Anwendungen wie RDBMS, EDW und MPR-Systeme sondern eher eine Ergänzung dazu. Dabei ist von entscheidender Bedeutung, dass es mit bestehenden Systemen und Tools kompatibel ist (und auf einer Vielfalt von Systemen und Technologien eingesetzt werden kann). Aber durch die Bereitstellung einer Plattform für die Erfassung, Speicherung und Verarbeitung riesiger Datenmengen auf wirtschaftliche und stark skalierbare Weise, ermöglicht es die Entwicklung einer völlig neuen Generation analytischer Anwendungen. Häufige Anwendungsmuster für Hadoop Analytische Anwendungen gibt es in allen Formen und Größen. Sie zielen in erster Linie darauf ab, einen bestimmten vertikalen Bedarf zu decken. Daher scheint auf den ersten Blick nur ein geringer Zusammenhang zwischen den Anwendungen in den verschiedenen Industriezweigen und Branchen zu bestehen. Auch die analytischen Herausforderungen variieren zweifellos stark zwischen den unterschiedlichen Branchen. Wenn sie jedoch auf Ebene der Infrastruktur beobachtet werden, lassen sich sogar einige ganz deutliche Muster erkennen, die in eines der folgenden drei Anwendungsmuster passen. Apache Hadoop Anwendungsmuster: Hortonworks Inc. 2013 Seite 4
1. Muster: Apache Hadoop als Datenaufbereitung Beim Datenaufbereitungs -Muster der Hadoop-Anwendung geht es darum, Unternehmen die Möglichkeit zu bieten, diese neuen Datenquellen in ihre gemeinhin verwendeten BI- oder analytischen Anwendungen zu integrieren. Ich besitze zum Beispiel eine Anwendung, die mir basierend auf den Daten meiner ERP- und CRM-Systeme einen Überblick über meinen Kunden bietet; wie kann ich aber Daten aus den Kundenbesuchen auf meiner Website integrieren, um mehr über die Interessenbereiche meines Kunden zu erfahren? Das Anwendungsmuster der Datenaufbereitung ist in der Regel das, worauf die Kunden zurückgreifen. Abbildung 3: Hadoop als Datenaufbereitung Das Hauptkonzept hierbei ist die Nutzung von Hadoop, um große Datenmengen in überschaubarere Mengen zu filtern. Die daraus erhaltenen Daten werden anschließend in vorhandene Datensysteme hochgeladen, damit die herkömmlichen Tools auf sie zugreifen können wenn auch mit einem wesentlich komplexeren Datensatz. In gewisser Hinsicht ist dies der einfachste der Use Cases, da er eine eindeutige Möglichkeit zur Wertschöpfung für Hadoop mit nur minimaler Unterbrechung des traditionellen Ansatzes bietet. Datenaufbereitung in der Praxis Das Konzept der Datenaufbereitung findet ungeachtet der Branche Anwendung. Bei den Finanzdienstleistungen ist zu beobachten, dass Unternehmen Handelsdaten aufbereiten, um die Märkte besser zu verstehen oder um komplexe Portfolios zu analysieren und zu bewerten. Energieversorgungsunternehmen nutzen Big Data, um den Verbrauch anhand der Regionen zu analysieren und die Produktionsmenge besser vorherbestimmen zu können, wodurch Beträge in Millionenhöhe eingespart werden. Apache Hadoop Anwendungsmuster: Hortonworks Inc. 2013 Seite 5
Einzelhändler (und nahezu alle verbraucherorientierten Unternehmen) nutzen die Datenaufbereitung oft, um Erkenntnisse über die Verbraucherstimmung im Internet zu gewinnen. Telekommunikationsunternehmen wenden die Datenaufbereitung an, um zur Optimierung der Rechnungslegung Daten aus Einzelverbindungsnachweisen zu extrahieren. Und schließlich wird Hadoop in Branchen mit kostspieligen und geschäftskritischen Geräten oftmals für prädiktive Analysen und zur proaktiven Fehlerermittlung eingesetzt. In der Kommunikationsbranche kann dies ein Netzwerk von Mobilfunkmasten sein. Ein Restaurant überwacht möglicherweise seine Kühlraumdaten. Hadoop wird häufig genutzt, um Störungen/Fehler dieser Ressourcen vorherzusagen, bevor sie eintreten, da Unternehmen wissen, dass die Reparatur meist kostspieliger als der Ersatz ist und Ausfallzeiten vermieden werden sollen. Grundsätzlich besteht überall dort ein Use Case, wo Analysen durchgeführt werden, da er in der Regel Daten für die Nutzung in den EDW- und BI-Tools erstellt. 2. Muster: Untersuchung von Daten mit Apache Hadoop Der zweithäufigste Use Case ist die sogenannte Datenuntersuchung. In diesem Fall erfassen und speichern Unternehmen große Mengen dieser neuen Daten (manchmal auch als Datenpool bezeichnet) in Hadoop und untersuchen die Daten dann direkt. Anstatt Hadoop also als Sammelbereich für die Verarbeitung und das anschließende Ablegen der Daten im EDW zu nutzen wie das im Use Case der Datenaufbereitung der Fall ist bleiben die Daten in Hadoop und werden direkt dort ausgewertet. Abbildung 4: Hadoop und Datenuntersuchung Apache Hadoop Anwendungsmuster: Hortonworks Inc. 2013 Seite 6
Der Use Case der Datenuntersuchung kommt oft dort zur Anwendung, wo Unternehmen ansetzen durch die Erfassung von Daten, die bisher entsorgt wurden (erschöpfte Daten wie z. B. Weblogs, Social-Media-Daten etc.) und den Aufbau völlig neuer analytischer Anwendungen, die diese Daten unmittelbar wirksam einsetzen. Ein Beispiel ist ein Telekommunikationsunternehmen, das die Datenuntersuchung nutzt, um gewaltige Mengen an maschinell erzeugten Daten zu erfassen, um den wahrscheinlichen Ausfallpunkt von Geräten vorherzusagen. Angesichts der riesigen Datenmengen ist es möglich, dass diese Auswertung bisher nicht kostengünstig durchgeführt werden konnte. Datenwissenschaft und Untersuchung Wie bereits erwähnt, kann die Untersuchung von Daten fast jeder Branche Vorteile bringen. Bei Finanzdienstleistern werden die Datenanalysen beispielsweise im Rahmen von forensischen Untersuchungen oder Betrugsermittlungen eingesetzt. Eine professionelle Sportmannschaft verwendet Datenwissenschaft zur Analyse ihrer Spielerwechsel und Neuzugänge, wie im Film Moneyball. Viele Unternehmen nutzen Hadoop auch, um eine einzige Sichtweise des wahren Zustands für Kunden oder Produkte und andere Einheiten zu erhalten. Dies bietet nachweislich einen bedeutenden Nutzen, da es zu besserem Kundendienst oder mehr Produkten pro Kunden aufgrund von verbesserten Marketingprogrammen führt. Und schließlich werden Datenwissenschaft und Datenanalyse eingesetzt, um Möglichkeiten für Nettoneugeschäfte oder neue Erkenntnisse auf eine Art und Weise zu ermitteln, die vor Hadoop unmöglich gewesen wäre. 3. Muster: Anwendungsanreicherung Der dritte und letzte Use Case ist die sogenannte Anwendungsanreicherung. In diesem Szenario werden in Hadoop gespeicherte Daten verwendet, um das Verhalten einer Anwendung zu beeinflussen. So kann zum Beispiel durch das Speichern aller Daten einer Online-Sitzung (d. h. sämtliche Sitzungen aller Nutzer auf einer Webseite) die Erfahrung für einen Kunden zugeschnitten werden, wenn er auf eine Webseite zurückkehrt. Indem all diese Daten in Hadoop gespeichert werden, können Sitzungshistorien aufbewahrt und für einen reellen Nutzen herangezogen werden zum Beispiel durch ein zeitgerechtes Angebot ausgehend von der Web- History eines Kunden. Apache Hadoop Anwendungsmuster: Hortonworks Inc. 2013 Seite 7
Abbildung 5: Anwendungsanreicherung mit Hadoop Für viele der weltweit bedeutenden Internetpräsenzen Yahoo, Facebook und andere stellt dieser Use Case ihre Geschäftsgrundlage dar. Durch die individuelle Gestaltung des Nutzererlebnisses können sie sich in einem wichtigen Aspekt von ihrer Konkurrenz unterscheiden. Man könnte meinen, dass dies grundsätzlich der letzte Use Case ist, der übernommen wird nachdem sich Unternehmen mit der Aufbereitung und Untersuchung von Daten in Hadoop vertraut gemacht haben. Gleichzeitig deutet er aber auch darauf hin, wie sich die Hadoop-Nutzung im Laufe der Zeit weiterentwickeln kann und wird. Damit sollen noch mehr Anwendungen unterstützt werden, als die traditionellen Datenbanken heute schon ermöglichen. Anreicherung: Die richtigen Daten zur richtigen Zeit für den richtigen Kunden Die direkteste Anwendung der Anreicherung sind die Recommendation Engines, die von großen Internetpräsenzen eingesetzt werden. Diese Unternehmen analysieren riesige Datenmengen, um Muster/wiederholbare Verhaltensweisen zu erkennen und somit der richtigen Person zum richtigen Zeitpunkt die richtigen Inhalte zu präsentieren und die Konversionsrate für Käufe zu erhöhen. Dies war sogar der zweite Use Case für Hadoop bei Yahoo, als sie erkannten, dass Hadoop zu einer besseren Anzeigenplatzierung beitragen konnte. Dieses Konzept lässt sich über die großen Internetpräsenzen hinaus übertragen und wird in eher traditionellen Unternehmen zur Umsatzsteigerung angewandt. Einige stationäre Unternehmen wenden diese Konzepte sogar an, um ein dynamisches Preismanagement in ihren Verkaufsstellen umzusetzen. Apache Hadoop Anwendungsmuster: Hortonworks Inc. 2013 Seite 8
Ein pragmatischer Ansatz zur Integration der Anwendungsfälle Die Einführung einer neuen Plattform-Technologie in die IT-Umgebung von Unternehmen ist natürlich immer mit Komplexität verbunden und Hadoop ist da keine Ausnahme. Daher konzentrieren wir uns bei Hortonworks sehr auf Kompatibilität, um sicherzustellen, dass Apache Hadoop und die Hortonworks Data Platform mit Ihren vorhandenen Tools zusammenarbeiten. Dank unserer engen entwicklungstechnischen Beziehungen zu Microsoft, Teradata, Rackspace und anderen großen Unternehmen, arbeiten wir intensiv daran, die Nutzung von Hadoop weltweit zu ermöglichen, da wir von den bedeutenden Veränderungen für viele Unternehmen überall auf der Welt überzeugt sind. Sie können uns folgen oder sich näher mit unseren Lerntools befassen. Oder laden Sie die HDP Sandbox, eine Single-Node-Installation von HDP, die Sie auf Ihrem Laptop ausführen können, herunter. Hadoop hat das Potential, die Datenlandschaft stark zu prägen und durch die Kenntnis der gemeinsamen Anwendungsmuster können Sie die Komplexität deutlich reduzieren. Laden Sie Hortonworks Sandbox herunter und beginnen Sie noch heute, Hadoop zu nutzen Über Hortonworks Hortonworks ist der führende gewerbliche Anbieter von Apache Hadoop, der unübertroffenen Open-Source-Plattform für die Speicherung, Verwaltung und Analyse von Big Data. Unsere Distribution, die Hortonworks Data Platform mit Unterstützung von Apache Hadoop, bietet eine offene und stabile Grundlage für Unternehmen und ein wachsendes Ökosystem für die Entwicklung und den Einsatz von Big-Data-Lösungen. Hortonworks ist die zuverlässige Quelle für Informationen zu Hadoop und zusammen mit der Hadoop-Community macht Hortonworks Hadoop robuster und sorgt für eine einfachere Installation, Verwaltung und Anwendung. Hortonworks bietet unerreichten technischen Support, Schulungs- und Zertifizierungsprogramme für Unternehmen, Systemintegratoren und Technologieanbieter. In den USA: 1.855.846.7866 Twitter: twitter.com/hortonworks 3460 West Bayshore Rd. International: +1.408.916. 4121 Facebook: facebook.com/hortonworks Palo Alto, CA 94303 USA www.hortonworks.com LinkedIn: linkedin.com/company/hortonworks