w26M2
w26M2
w26M2
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Big-Data-Technologien – Wissen für Entscheider<br />
Anwendungsbeispiel<br />
Klout 99 ist ein führender Anbieter für Social Network<br />
Analytics und early adopter für Hadoop. Klout berechnet<br />
den Einfluss von Millionen von Menschen in sozialen<br />
Medien mithilfe einer Lösung für Big Data Analytics. Die<br />
Herausforderung besteht darin, ein 800 Terabyte Data<br />
Warehouse mit über 1 Billion Datenzeilen für die Ad-hoc-<br />
Analyse bereitzustellen. Obwohl Hive Ad-hoc-Abfragen<br />
von Hadoop über HiveQL unterstützt, ist die Antwortgeschwindigkeit<br />
für die meisten BI-Szenarien unzureichend.<br />
Hive bietet ein exzellentes und skalierbares Data<br />
Warehouse Framework auf Basis Hadoop. Es ist allerdings<br />
nicht die beste Wahl für Ad-hoc-Abfragen großer Daten.<br />
Eine bessere Lösung besteht darin, die relevanten<br />
Hadoop-Daten mittels HiveQL in einen relationalen Cube<br />
zu bringen. Dieser kann die Daten dann für Analysen und<br />
Berichte bereitstellen. Auf diese Weise erreicht Klout<br />
mittlere Antwortzeiten von weniger als 10 Sekunden für<br />
1 Billion Datenzeilen (vgl. Abbildung 26 100 ).<br />
Leider gibt es keine Möglichkeit, eine multidimensionale<br />
Analysedatenbank (MOLAP) direkt an eine Hive-Datenquelle<br />
zu verbinden. Eine häufige Lösung, initial auch<br />
für Klout, ist die Nutzung einer Staging-Datenbank über<br />
Sqoop. Der Cube kann dann die Daten von dort importieren.<br />
Aber dieser Ansatz hat Nachteile: Er erzeugt zusätzliche<br />
Latenz und Komplexität, die die Verwaltbarkeit der<br />
Systeme und ihre Kosten beeinflusst.<br />
Mit einem Interface für die direkte Abfrage 101 können<br />
die Staging-Datenbank und teure Kopieroperationen<br />
vermieden werden. Darüber hinaus kann der Cube quasi<br />
Registrations<br />
DB<br />
(MySql)<br />
Klout.com<br />
(Node.js)<br />
Signal<br />
Collectors<br />
(Java/Scala)<br />
Data<br />
Enhancement<br />
Engine<br />
(PIG/Hive)<br />
Data<br />
Warehouse<br />
(Hive)<br />
Profile DB<br />
(HBase)<br />
Search Index<br />
(Elastic Search)<br />
Klout API<br />
(Scala)<br />
Mobile<br />
(ObjectiveC)<br />
Partner API<br />
(Mashery)<br />
Streams<br />
(MongoDB)<br />
Monitoring<br />
(Nagios)<br />
Serving Stores<br />
Dashboards<br />
(Tableau)<br />
Perks Analyics<br />
(Scala)<br />
Analytics<br />
Cubes<br />
(SSAS)<br />
Event Tracker<br />
(Scala)<br />
Abbildung 26: Klout-Architektur<br />
99<br />
www.klout.com, siehe auch http://download.microsoft.com/download/D/2/0/D20E1C5F-72EA-4505-9F26-FEF9550EFD44/MOLAP2HIVE_KLOUT.docx<br />
100<br />
Quelle: Microsoft<br />
101<br />
zum Beispiel Microsoft ODBC Treiber für Hive<br />
71