Datenübernahme und -verarbeitung 8 Dinge, die Sie über Big Data wissen sollten

Autor / Redakteur: Thomas Joos / Nico Litzel

Um Big Data optimal im Unternehmen einzusetzen, kommen Verantwortliche um den Betrieb eines größeren Clusters kaum herum. Außerdem gibt es keine einzelne Lösung, die alles enthält, sondern es sind verschiedene Anwendungen notwendig. In diesem Beitrag geben wir einen Einblick.

Anbieter zum Thema

Mit Ambari können Administratoren auf Basis einer webbasierten Oberfläche einen Hadoop-Cluster einrichten.
Mit Ambari können Administratoren auf Basis einer webbasierten Oberfläche einen Hadoop-Cluster einrichten.
(Bild: ASF/T. Joos)

Die Basis der meisten Big-Data-Umgebungen ist Hadoop. Diese Lösung verfügt aber standardmäßig nicht über alle Features, sondern muss mit weiteren Lösungen ergänzt werden. Erst dann ist eine vernünftige Big-Data-Infrastruktur sinnvoll. Es gibt kostenlose Open-Source-Erweiterungen, welche die Installation, den Betrieb und die Datenverarbeitung mit Hadoop erleichtern. Sind diese Lösungen noch nicht im Einsatz, so ist es sinnvoll, diese nachträglich zu implementieren. Unternehmen, die eine neue Umgebung installieren, sollten idealerweise gleich die notwendigen Zusatzdienste mit einplanen.

Hadoop-Cluster optimal installieren und verwalten mit Ambari

Hadoop-Cluster sind systembedingt in den meisten Fällen recht große Konstruktionen, die mit Standardbordmitteln nur schwer zu installieren, zu verwalten und zu überwachen sind. Ambari bietet eine grafische Oberfläche für das Installieren und erweitern von Hadoop-Clustern. Die webbasierte GUI führt Administratoren durch die Erstellung des Hadoop-Clusters.

Administratoren können über Ambari Dienste und Prozesse auf Clusterknoten in Hadoop starten, stoppen und deren Status überwachen. Dazu stellt Ambari auch ein webbasiertes Dashboard für die Verwaltung zur Verfügung. Außerdem lässt sich die Lösung mit Nagios verbinden.

Big-Data-Umgebungen virtualisieren

Bei Docker handelt es sich um eine Lösung, die Anwendungen im Betriebssystem virtualisieren kann. Basis ist Linux. Anwendungen lassen sich leichter bereitstellen, da die Container mit den virtualisierten Anwendungen transportabel sind.

Oft ist es effizienter, die Anwendung selbst zu virtualisieren und direkt auf einem Host zu betreiben. Das muss das Betriebssystem aber unterstützten, und die Anwendungen auch. Docker ist eine solche Virtualisierungslösung, die auf die Linux-Lösungen Libcontainer und Execution Driver setzt. Erstellen Administratoren zum Beispiel einen Hadoop-Cluster, lassen sich die Knoten mit Docker in Container virtualisieren und auf den Hosts verteilen. In diesem Bereich gibt es mit Cloudbreak eine Möglichkeit, Hadoop direkt mit Docker-Technologien zu verbinden. Ambari kann Hadoop-Cluster basierend auf Docker-Container installieren. Administratoren finden dazu Anleitungen im Internet.

Abfragen für Hadoop mit Apache Drill

Apache Drill erweitert die Möglichkeit von Hadoop-Umgebungen und NoSQL-Datenbanken um die Möglichkeit, SQL-Abfragen zu erstellen. Im Fokus stehen Echtzeit-Abfragen und Ad-hoc-Berichte in BI- oder Big-Data-Umgebungen. Apache Drill ist in der Lage, einfache Analysen und Abfragen durchzuführen, kann aber auch in Batch-Prozessen und Pipelines eingebunden werden, wenn es um komplexere Berechnungen geht. Die Abfrage-Sprache wird auch als DrQL bezeichnet.

Vorteil der Lösung ist die Unterstützung von SQL-gängigen Abfragen. Das heißt, Entwickler können sich sehr schnell in das Produkt einarbeiten und erhalten schnell zuverlässige Abfragen. Als Datenspeicher kann Drill direkt an Hadoop angebunden werden und unterstützt in dieser Hinsicht auch das Hadoop File System (HDFS); HBase wird ebenfalls unterstützt. Unternehmen, die sich mit Hadoop beschäftigen, kommen kaum um Spark und Drill herum. Auch wenn die beiden Technologien noch nicht im Einsatz sind, sollten sich Entwickler den Produkten auseinandersetzen.

Big Data mit Apache Spark

Wer sich mit Big Data und Hadoop beschäftigt, sollte auch Apache Spark im Blick haben. Durch das Produkt wird die Verwendung von Hadoop in eine neue Dimension der Leistung gehoben, auf die kein Unternehmen verzichten kann, welches Big Data effizient betreiben will. Im Daytona Gray Sort Benchmark siegte Spark in der 100-Terabyte-Klasse mit einem neuen Weltrekord. Der alte Weltrekord lag bei 72 Minuten und wurde von einem Hadoop-MapReduce-Cluster aufgestellt. Spark hat den alten Rekord mit 23 Minuten geschlagen – und das mit einem Zehntel der Rechenkraft.

Es wird schnell klar, dass Spark in Bereiche der Big-Data-Verarbeitung vordringen kann, die für Hadoop nicht möglich sind. Apache Spark erweitert die Möglichkeit von Hadoop-Clustern um Echtzeitabfragen, ähnlich zu SQL. Dazu bietet das Framework In-Memory-Technologien, kann also Abfragen und Daten direkt im Arbeitsspeicher der Clusterknoten speichern. Da die Abfragen sich auch parallel auf mehrere Knoten verteilen lassen, steigt die Leistung enorm.

Apache Spark soll MapReduce in Hadoop ablösen und bietet eine schnellere Abfragegeschwindigkeit von Daten. Die Entwickler selbst sprechen von einer hundertfachen Geschwindigkeit. Das Framework wird bereits von großen Unternehmen eingesetzt, die eine große Datenmenge verarbeiten müssen. Prominente Beispiel sind NASA, Intel und IBM.

Apache Sqoop – SQL-Datenaustausch in Big-Data-Umgebungen

Apache Sqoop ist ein Datentransfer-Tool für Big-Data-Umgebungen, vor allem für Hadoop. Einer der größten Vorteile des Tools ist die Möglichkeit, Daten aus SQL-Datenbanken in NoSQL-Infrastrukturen zu übertragen. Sollen Daten zwischen SQL-Datenbanken und NoSQL-Infrastrukturen/Hadoop-Umgebungen ausgetauscht werden, kommen Entwickler kaum an Apache Sqoop vorbei.

Der Daten-Import-Export lässt sich in beide Richtungen durchführen, also von der relationalen Datenbank zu Hadoop und von Hadoop zurück in die entsprechende Datenbank. Entwickler können Sqoop in eigene Infrastrukturen einbinden, aber auch in Cloudlösungen integrieren. Sqoop steht auch für HDInsight in Microsoft Azure zur Verfügung. So gut wie jede Hadoop-Distribution und -Cloudlösung unterstützt Sqoop. Die wichtigsten relationalen Datenbanken lassen sich anbinden.

Mehr Sicherheit mit Apache Knox und Chukwa

Bei Apache Knox handelt es sich um ein Gateway für Hadoop-Cluster. Wer Big-Data-Analysen im Cluster betreibt, muss natürlich auch für die Sicherheit im Cluster sorgen. Hier spielt Apache Knox eine wichtige Rolle. Die Hadoop-Erweiterung bereichert das Sicherheitsmodell von Hadoop und integriert Authentifizierungen und Benutzerrollen für den Zugriff auf die Daten.

Für die Anbindung der Benutzer kann Knox auch auf Active Directory und andere LDAP-Verzeichnisse zugreifen. Auch die Anbindung an andere Authentifizierungsmechanismen ist möglich. Um die Hadoop-Infrastruktur zu überwachen, setzen Administratoren zum Beispiel auf Apache Chukwa. Das System setzt auf Hadoop auf und überwacht HDFS-Datenzugriffe. Auch das MapReduce-Framework lässt sich damit analysieren und überwachen.

Big Data in der Cloud

Nicht immer ist ein eigener Cluster für den Betrieb einer Big-Data-Lösung notwendig. Amazon bietet in Amazon Web Services und Microsoft in Azure die Möglichkeit, Cluster zu erstellen. Die hier vorgestellten Zusatzwerkzeuge funktionieren überwiegend auch mit diesen Cloud-Lösungen, sodass Administratoren auch hier die Möglichkeit haben, sich die Arbeit etwas zu erleichtern. Neben der Möglichkeit, Hadoop als virtuellen Cluster zu erstellen, können Administratoren auch virtuelle Server in Amazon ECS oder Microsoft Azure Virtual Machines betreiben und auf dieser Basis selbst einen Cluster erstellen.

HDFS oder GPFS für Big Data nutzen

Viele Unternehmen setzen beim Betrieb einer Big-Data-Lösung auf das Hadoop File System (HDFS). Es gibt aber auch Alternativen. Eine der bekanntesten Alternativen in diesem Bereich ist das General Parallel File System (GPFS) von IBM. GPFS ist für AIX und Linux verfügbar.

Nutzen lassen sich die Vorteile von GPFS im Zusammenhang mit Hadoop, vor allem mit einer speziellen Hadoop-Distribution von IBM. Diese Distribution mit der Bezeichnung InfoSphere BigInsights bietet vor allem in sehr großen Umgebungen im Vergleich zu reinen Open-Source-Umgebungen viele Vorteile.

Durch die neue GUI bietet GPFS wesentliche Vorteile im Vergleich zu HDFS. Im Bereich Hadoop sollten sich Unternehmen vor der Anschaffung von HDFS darüber nachdenken, ob nicht vielleicht GPFS besser geeignet sein könnte. Allerdings sollten hier erst Angebote eingeholt werden, da GPFS ein kommerzielles Dateisystem ist. Prominenter Kunde ist zum Beispiel das Formel-1-Team Red Bull Racing.

(ID:44392703)