22.01.2015 Aufrufe

w26M2

w26M2

w26M2

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Big-Data-Technologien – Wissen für Entscheider<br />

Auf der obersten Ebene bietet Stratosphere Programmierschnittstellen<br />

in den Programmiersprachen Java und Scala<br />

an, in denen Datenanalyseprogramme gemäß des PACT-<br />

Modells spezifiziert werden können. Durch die Verwendung<br />

dieser populären Sprachen ist eine große Menge<br />

an Entwicklern in der Lage, Datenanalyseprogramme zu<br />

erstellen. Darüber hinaus stellt Stratosphere mit Meteor<br />

und Spargel weitere Progammierschnittstellen bereit.<br />

Meteor ist eine erweiterbare Skriptsprache für einfache<br />

Datenanalyseaufgaben. Spargel bietet das populäre<br />

knoten-zentrierte Programmiermodell für graphstrukturierte<br />

Daten an. Stratosphere parallelisiert diese Analyseprogramme<br />

automatisch und optimiert ihre Ausführung<br />

in Abhängigkeit von Systemumgebung, Workload und<br />

Eigenschaften der zu analysierenden Daten.<br />

map<br />

union<br />

reduce<br />

iterate<br />

Abbildung 57: Stratosphere-Operatoren<br />

join<br />

iterate<br />

delta<br />

cross<br />

cogroup<br />

Hierzu werden neuartige Verfahren der Codeanalyse,<br />

Codegenerierung und Datenbankoptimierung angewendet,<br />

die im Rahmen der Hochtechnologieforschung<br />

speziell für Stratosphere entwickelt wurden. Durch<br />

diese Optimierungen können auch Nutzer ohne Systemprogrammiererfahrung<br />

das System effizient nutzen.<br />

Stratospheres PACT-Programmiermodell erweitert zudem<br />

das von Hadoop bekannte MapReduce-Modell durch neue<br />

Operatoren und gibt damit Data Scientists einen umfangreichen<br />

Werkzeugkasten zur Lösung von Datenanalyseproblemen<br />

auf Big Data (vgl. Abbildung 57)<br />

Die neben map und reduce zusätzlichen Operatoren im<br />

PACT-Modell ermöglichen die einfache Spezifikation von<br />

komplexen Datenanalyseprogrammen, wie sie im Data<br />

Mining, Maschinellen Lernen und komplexer Statistik<br />

üblich sind (z. B. Regression, Clustering, Graph-Analyse).<br />

Die Operatoren join, cross, union, und cogroup erlauben<br />

dabei die Verknüpfung, Verbindung oder Korrelation von<br />

mehreren Datenströmen, welche in map/reduce-Systemen<br />

wie Hadoop nur mit großem Aufwand möglich sind.<br />

Insbesondere hervorzuheben sind die Operatoren iterate<br />

und iterate-delta, da diese Stratosphere von den meisten<br />

anderen kommerziellen und nichtkommerziellen<br />

Systemen unterscheiden: Algorithmen des Data Minings,<br />

des maschinellen Lernens und der Graph-Verarbeitung<br />

erfordern häufig, dass die Daten mehrfach durchlaufen<br />

werden. Stratosphere unterstützt mit iterate und iteratedelta<br />

hierzu nativ skalierbare iterative Algorithmen und<br />

kann diese im Gegensatz zu Hadoop, SQL-Datenbanken<br />

oder neueren Systemen wie Spark automatisch parallelisieren<br />

und effizient auf Rechenclustern verarbeiten.<br />

Neben den erweiterten Operatoren ist Stratosphere auch<br />

in der Lage, komplexe Datenflüsse abzubilden. Während<br />

bei Hadoop MapReduce ein vorgegebener Datenfluss von<br />

Map nach Reduce vorgegeben ist, ist Stratosphere in der<br />

Lage, Daten in vielfältiger Weise zwischen den Operatoren<br />

zu senden.<br />

M<br />

R<br />

J<br />

R<br />

R<br />

M<br />

R<br />

M<br />

Hadoop<br />

Stratosphere<br />

Abbildung 58: Stratosphere – Möglichkeit komplexer Datenflüsse<br />

133

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!