Schwerpunkt Big Data bei ProSiebenSat.1 Digital „Big Data“ ist in aller Munde – ein typisches Hype-Thema, könnte man meinen. Doch hinter dem Hype verbirgt sich ein enormes technologisches Potenzial, das innovative Unternehmen bereits in großen Projekten zum Einsatz bringen. Das IT-Projekthaus inovex hat die ProSiebenSat.1 Digital GmbH dabei unterstützt, auf der Basis der Open-Source-Software Apache Hadoop eine komplexe Big-Data-Lösung für die Analyse des gesamten Web Traffic zu erstellen, der in der Unternehmensgruppe entsteht. Die ProSiebenSat.1 Group im Kurzprofil Die ProSiebenSat.1 Group zählt heute mit 28 TV-Sendern und einer Reichweite von über 62 Millionen TV-Haushalten zu den führenden Medienkonzernen Europas. Das Kerngeschäft der Gruppe ist das Fernsehen, von den bekannten TV-Sendermarken wie SAT.1, ProSieben, kabel eins und sixx über die ProSiebenSat.1 Networld bis hin zur Online-Videothek maxdome, digitalen Pay-TV-Angeboten und mobilen Services. Die ProSiebenSat.1 Digital GmbH produziert als digitale Entertainment-Tochter alle interaktiven Plattformen wie Online, HbbTV, Teletext oder Mobile. Skalierende Datenvolumina + heterogene Datenquellen = Big Data Die ProSiebenSat.1 Digital GmbH benötigt für die Messung, Steuerung und Optimierung ihrer zahlreichen Online-Plattformen detaillierte Datenanalysen des Web Traffic. Primär sind dabei nicht-transaktionale Online-Plattformen relevant, aber es sollen auch Transaktionsdaten der Video-Plattform MyVideo und von maxdome.de eingebunden werden. Während der IT-technischen Konzeption einer geeigneten Analyse-Plattform (Data Warehouse) stößt man sehr schnell auf zwei typische Big-Data-Problemstellungen: ein sehr stark skalierendes Datenvolumen und eine Vielzahl von heterogenen Datenquellen. Das absolute Datenvolumen im Jahr 2012 liegt bei etwa 10 Terrabyte, eine heute auch mit klassischen Data-Warehouse-Technologien beherrschbare Größe. Das erwartete Datenwachstum von jährlich 300 % führt jedoch bereits bis 2015 zu einer Datenmenge im Petabyte-Bereich – „Big Data“ also. In das Data Warehouse sollen Kennzahlen von vielen verschiedenen Diensten einfließen und miteinander in Beziehung gesetzt werden. Die Quellsysteme teilen sich dabei auf fünf Bereiche auf: 16 1. Online-Trafficdaten aus verschiedenen Messsystemen Google Analytics WebTrekk Unique User Tracker Social Networks, z. B. Facebook Insights 2. VermarktungsdatenausderOnline-Werbung von verschiedenen Adservern: AdServer (DoubleClick for Publishers) AdSense OpenX Salesforce (ProDia) 3. Markt- und Konkurrenzdaten IVW AGOF 4. Transaktionsbezogene Daten User Service MyVideo-Registrierungen Social Networks, z. B. Facebook Insights Maxdome 5. Weitere, interne Daten zur Geschäfts­ steuerung Controlling: Budget- und Forecast-Daten TV-Schaltpläne für Eigenwerbung TV-Reichweiten (Sender und Formate) Kampagnen-Daten (Online-Marketing, Werbemittelvermarktung) Beschreibende Daten zu Videos und anderem Content Hybride Big-Data-Plattform auf Open-Source-Basis Das vorgeschlagene Data Warehouse setzt sich als hybride, Open-Source-basierte Lösung aus einer relationalen Datenbank mit PostgreSQL sowie einem vorgelagerten Storage-and-Compute-Cluster auf Basis von Apache Hadoop zusammen (s. Schaubild rechts). Das Apache-Hadoop-Cluster übernimmt die Speicherung aller historischen Daten in feinster Granularität und stellt den Integrations-Layer bereit. Hadoop ist dafür konzipiert worden, große Datenmengen kostengünstig zu speichern und zu verarbeiten. Als horizontal skalierbares System ermöglicht Hadoop, dem heutigen Datenspeicherbedarf entsprechend mit einem kleinen Cluster aus sechs Knoten zu starten. Das prognostizierte Anwachsen der Datenmenge kann zukünftig einfach durch Hinzunahme neuer Knoten aufgefangen werden. Durch die redundante Speicherung aller Daten im Cluster und die Konzeption des HadoopFrameworks ist außerdem die Ausfallsicherheit des Clusters bereits per se gegeben. Um die Installation und Konfiguration des Clusters zu vereinfachen, wird die CDH4-Distribution von Cloudera eingesetzt, in der alle benötigten Software-Komponenten aus dem Hadoop-Ecosystem optimal aufeinander abgestimmt sind. Die Software wird mithilfe spezialisierter RexModule (inovex-Toolsuite für Deployment- und Configuration-Management, www.rexify.org) voll automatisiert im Cluster verteilt, installiert und konfiguriert. Datenintegration und -aufbereitung Die Vielzahl an unterschiedlichen Datenquellen erfordert verschiedene Herangehensweisen an deren Erschließung für das DataWarehouse-System: In den Fällen, in denen eine tagesaktuelle Verfügbarkeit der Daten ausreichend ist, werden diese als Dateien über einen Austausch per Secure FTP zur Verfügung gestellt. Videodaten, die mit geringerer Verzögerung ausgewertet werden müssen, werden dagegen über einen verteilten, ausfallsicheren Datentransportdienst (Apache Flume) eingesammelt. Daten aus sozialen Netzwerken wie Twitter und Facebook werden über deren serviceorientierte Schnittstellen abgefragt. Technik in Bayern 06/2013 schwerpunkt INFO INFO TIPP Die Bewirtschaftung eines solchen Systems geschieht durch sogenannte ETL-Prozesse (Extract, Transfer, Load). Hadoop unterstützt dabei hochgradig parallele und damit sehr schnelle Verarbeitungsprozesse nach dem Map-ReduceVerfahren. Zur Erstellung dieser Programme ist je nach Anwendungsfall eine der folgenden Alternativen gewählt worden: Pentaho Data Integration: bietet eine grafische Oberfläche, mit der BI-Anwender einfache Map-Reduce-Jobs erstellen können. Pig Latin: ist eine Skriptsprache, die für Datenbankentwickler leicht zu erlernen ist und im Hintergrund Map-Reduce-Jobs generiert. Java: manuelle Entwicklung der Mapper- und Reducer-Klassen in Java für besonders komplexe Transformationen oder wenn höchste Performance erforderlich ist. Datenanalyse Im Data Warehouse erfolgen die dimensionale Modellierung und die Implementierung eines Reporting- und Analyse-Layers. Damit steht dem Anwender ein geeignetes Daten­modell und eine vertraute Abfragesprache (SQL) zur Verfügung, um sowohl Standardberichte als auch Technik in Bayern 06/2013 Ad-hoc-Auswertungen schnell und qualitätsgesichert bereitstellen zu können. Außerdem können so praktisch alle BI-Frontend-Tools per ODBC auf das DWH zugreifen. Aber auch auf die Rohdaten im Hadoop-Cluster kann für Adhoc-Analysen per SQL bzw. ODBC zugegriffen werden: Ein Hive-Server stellt diesen Zugriff zur Verfügung. Hive wandelt die deskriptiven SQLAnfragen in Map-Reduce-Jobs um, die dann auf dem Cluster abgearbeitet werden. Zusammenfassung inovex hat für die ProSiebenSat.1 Digital GmbH zur Analyse des gesamten Web Traffic eine hybride Big-Data-Lösung aus einer relationalen Datenbank und einem Apache Hadoop Cluster entwickelt. Die SQL-Datenbank stellt ein vertrautes Interface bereit und erreicht Antwortzeiten im Sekundenbereich, Hadoop deckt die Big-Data-Anforderungen auch langfristig souverän ab. Zusätzlich zu den Log-Daten werden Daten aus dem Bereich Social-Media (Facebook, Twitter, Google Analytics) mit integriert. Jörg Ruckelshauß inovex GmbH, Münster informationen Key Facts Big-Data-System mit Apache Hadoop 5 Hadoop-relevante Datenquellen > 10.000.000 Datensätze mit 250 GB Volumen pro Tag Technologien Apache Hadoop, PIG, Hive, Flume, Java, PostgreSQL, Pentaho Data Integration INFO INFO TIPP über inovex inovex ist ein inhabergeführtes IT-Projekthaus. Mehr als 120 IT-Ingenieure unterstützen seit 1999 die IT-Abteilungen in großen Unternehmen und in Internet-Companies bei der Bewältigung der wichtigsten Aufgaben, die sich derzeit im Internet-Umfeld stellen: Web und Mobile Engineering, Business Intelligence (BI) und Big Data, Cloud-Infrastrukturen und Data Center Management. Die BI-Kompetenz von inovex deckt sowohl die klassischen BIThemen ab (Data Warehouse, ETL, Reporting, Dashboards) als auch die neuen Trends im BIUmfeld: Big Data, Enterprise Search und Social Analytics. inovex deckt die gesamte Big-DataPalette ab: Aufbau der Infrastruktur, Big Data Engineering, Einführung von Map-Reduce und die Unterstützung angrenzender Technologien (Flume, HBase, Pig, Hive). www.inovex.de 17