Big Data Hands On Part 1: Getting Started

9. April 2014

Dieser Beitrag zeigt Möglichkeiten zum Einstieg in die Big Data Thematik auf. Es werden technische Herangehensweisen gezeigt, um einen ersten Eindruck von den Anwendungssystemen zu gewinnen. Grundlage ist eine Hortonworks Hadoop HDP 2.1 Installation. Diese stellt ein Ökosystem zur Verwaltung von strukturierten und unstrukturierten Daten bereit.

Auf grundlegende technische Begriffe der Hadoop Architektur wie MapReduce, HDFS, Namenode, Datanodes wird in diesem Hands On Beitrag nicht eingegangen.

Intro Installation

Getreu dem Motto „Think big… start small" sollte man sich auf diesem Wege Big Data nähern. Ziel ist ein virtuelles Hortonworks Lab in einer Hyper-V Umgebung.

Zunächst möchte ich allerdings Alternativen zu einer selbstkonfigurierten Hyper-V Umgebung aufzeigen. Für ein hands on  in Big Data Umfeld bietet sich der HDInsight Server an. Dieser steht on-premise als Developer Preview (diese unterstützt z. Zt. nur eine Single-Node Installation) zum Download bereit, als Cloudlösung ist HDInsight auf Windows Azure verfügbar.

Neben dem On-Premise- und Cloudserver steht auch ein HDInsight Emulator zur Verfügung.

Der Cloudbasierte Azure HDInsight Service erfordert zum jetzigen Zeitpunkt tiefgehende PowerShell Kenntnisse. Auch das zur Verfügung stehende Kontingent auf Azure ist bei mehreren Nodes recht schnell erschöpft.

Für einen technischen Deepdive empfehle ich den Einsatz einer Hortonworks Hadoop Installation in einer Hyper-V Umgebung. Hier kann der versierte User auch hinter die Kulissen blicken. Wer den Installationsaufwand scheut, kann über die HortonWorks Website eine Sandbox VM herunterladen.

  • Sandbox VM als Download
    läuft out of the box und liefert mit Hue eine angenehme Web GUI

Für eine vollständige Installation in einer Hyper-V Umgebung kann die Hadoop Data Platform
(HDP 2.1) separat hier heruntergeladen werden. Hortonworks stellt HDP 2.1 für Linux und Windows bereit.

  • Manuelle Installation auf Linux Server via Ambari (Hadoop Installations Wizard)
    • RHEL/CentOS/SLES (64-bit)
  • Vollständig manuelle RPM oder TarBall Installation unter Linux ohne Ambari
    • Ubuntu/RHEL/CentOS/SLES (64-bit)
  • Hadoop Windows Installation
    • Wizard Unterstützung

In diesem Beitrag wird eine Windows Installation verwendet. Nach erfolgreicher Installation unter Windows Server 2012 R2 bietet sich im %HADOOP_ROOT% Folder folgendes Bild:

image

Neben den Teilmodulen des Hadoop Ecosystems finden sich hier diverse Power Shell / Batch Shell Skripte zum Starten und Stoppen der Windows Services. Bei den einzelnen Teilkomponenten handelt es sich um Java Programme.

Auf dem Desktop werden einige Links zu Websites für die Verwaltung der HDP Features angelegt:

image

Über den Link Hadoop YARN Status gelangt man z.B. zur Website des Ressource Locators
(YARN = Yet Another Ressource Locator). Dieser übernimmt nach Einrichten eines Jobs die Ressourcenallokation über die Nodes. Im Folgenden ein Beispiel des Job Trackers für einen Pig Job.

image

Fazit

Wer eine Einstiegsmöglichkeit in die Big Data Welt sucht und einen Eindruck von den verwendeten Technologien und Anwendungen sucht, der ist mit der von HortonWorks bereitgestellten DataPlattform  gut ausgestattet. Der Installtionsaufwand ist überschaubar und erste Ergebnisse lassen sich mit geringem Zeitaufwand generieren.

Wer zuvor in der Welt der SQL Server Management Tools beheimatet war, muss sich allerdings an eine grundlegend andersartige Umgebung gewöhnen – an Konsolenbefehlen führt in der Hadoop Welt kein Weg vorbei. Dank Verwendung von Skripten wie etwa Python in MapReduce Jobs via Pig lassen sich auch ETL Prozesse in Hadoop realisieren.

Im folgenden Beitrag werde ich anhand eines Beispiel-Hives den Umgang mit strukturierten Daten vorstellen.

Informationen zu MapReduce
http://research.google.com/archive/mapreduce.html

Hardware Referenz Architektur:
http://hortonworks.com/wp-content/uploads/2013/10/HP_Reference_Architecture_Jun13.pdf