Schulungen

meet-the-experts-logo-weiss

Wissen, das Sie persönlich weiterbringt, weil Sie es sofort anwenden können – das versprechen unsere neuesten Schulungen und Workshops.

Training:

HDP Developer: Developing Apps with Java

Beschreibung:

Apache Hadoop ist eine der umfassendsten und populärsten Lösungen für die aktuellen Herausforderungen im Umfeld von Big Data. Hadoop 2.x bietet dabei sowohl eine skalierbare und zuverlässige Plattform für das Speichern von großen Datenmengen unterschiedlicher Struktur und Herkunft als auch zahlreiche Werkzeuge und Paradigmen für deren Verarbeitung. Zudem existiert rund um diese Kernfunktionalitäten eine Vielzahl von zusätzlichen Open Source Projekten und Softwarelösungen, die Apache Hadoop 2.x zu einer funktionsreichen Plattform rund um Big Data machen.

Das viertägige Training richtet sich an erfahrene Java-Entwickler, die besser verstehen wollen, wie man Lösungen auf Basis von Apache Hadoop 2.x entwickelt und implementiert. Da das Training auch für Neulinge im Bereich Apache Hadoop geeignet ist, starten wir mit den Grundlagen von Hadoop 2.x und YARN, lernen das verteilte Dateisystem HDFS kennen und diskutieren die grundsätzliche Funktionsweise von MapReduce. Danach steht die Programmierung von MapReduce-Jobs im Vordergrund. Wir gehen die einzelnen Phasen und Möglichkeiten von MapReduce durch und probieren das Gelernte immer direkt anhand von Praxisbeispielen aus. Am letzten Tag verschaffen wir uns noch einen Überblick über die beiden Frameworks Pig und Hive, die beide auf MapReduce aufbauen und lernen zudem Oozie zur Verwaltung von komplexeren Workflows kennen.

Dieses praxisorientierte Training wird in Zusammenarbeit mit Hortonworks angeboten (siehe Original-Kursbeschreibung) und unsere erfahrenen Trainer teilen ihr Wissen und ihre Erfahrung in ca. 50% Theorie & Diskussionen sowie ca. 50% Labs & Übungen am eigenen Rechner mit Ihnen.

Schulungssprache

Deutsch, Material auf Englisch

Termine und Ort

  • auf Anfrage

Teilnahmegebühr

2.400 € EUR zzgl. MwSt.

Anmeldeformular


Teilnahmevoraussetzungen und Zielgruppe

  • Java-Entwickler, Architekten und Personen, die Java-MapReduce-Anwendungen für Hadoop 2.x tiefgehend verstehen und entwickeln wollen
  • Erfahrung in der Entwicklung von Java-Anwendungen und im Umgang mit Eclipse und Maven
  • Vorkenntnisse in Apache Hadoop sind nicht notwendig
  • Die Übungen werden mit Hilfe einer virtuellen Machine auf dem eigenen Notebook durchgeführt. Dieser muss die folgenden Voraussetzungen erfüllen:
    • Zeitgemäße CPU mit 2+ GHz (bevorzugt Intel i5/i7 oder äquivalente AMD-Architektur)
    • 8+ GB RAM
    • 50 GB freier Speicherplatz
    • 64-bit Betriebssystem (Windows 7, Windows 8 oder Mac OS X)

Trainer:

Dr. Stephan Kepser

Dr. Stephan Kepser ist Experte für Themen rund um Cloud Computing und Big Data. Zu diesen Themen hat er schon diverse Fach- und Blogartikel verfasst und zudem hat er die Hadoop User Group Rhein-Ruhr gegründet. Seine Interessen reichen von rechtlichen Fragen über Fragen der Architektur und des Systemdesigns bis hin zu den technischen Details von NoSQL-Datenbanken.

Uwe Printz

Uwe Printz ist Data Architect und Trainer. Seit dem ersten Kontakt mit verteilten Systemen lässt seine Begeisterung dafür nicht nach und zurzeit hält er sich bevorzugt im Hadoop-Zoo auf.

Inhalte:

  • Einführung in Hadoop 2.x und das Hadoop Distributed File System (HDFS)
  • Einführung in YARN, das Framework zum Management von Clusterressourcen
  • Entwicklung einer Java-MapReduce-Applikation
  • Ausführen einer MapReduce Applikation mittels YARN
  • Benutzung von Combinern und In-Map Aggregation zur Beschleunigung von MapReduce Jobs
  • Schreiben eines eigenen Partitioners zur Vermeidung von ungleichmäßiger Datenverteilung auf die Reducer
  • Durchführung einer sekundären Sortierung mittels eigener Key & Group Comparator Klassen
  • Erkennung von Use Cases für die eingebauten Input- und Output-Formate
  • Implementierung von eigenen Input- und Output-Formaten für einen MapReduce Job
  • Optimierung von MapReduce Jobs durch die Anwendung von Best Practices
  • Konfiguration von MapReduce Jobs zur Optimierung von Mappern und Reducern
  • Implementierung einer eigenen RawComparator Klasse
  • Benutzung des Distributed Cache
  • Erläuterung der unterschiedlichen Join-Strategien in Hadoop
  • Verwendung eines Bloom-Filters zum Joinen von zwei großen Datensets
  • Durchführung von Unit Tests mittels der UnitMR API
  • Einführung in HBase
  • Implementierung einer HBase MapReduce Applikation
  • Beispielhafte Use Cases für Pig und Hive
  • Implementierung eines einfachen Pig-Skripts zur Datenexploration und -transformation
  • Implementierung einer Pig UDF (User Defined Function) in Java
  • Ausführen einer Hive-Abfrage
  • Implementierung einer Hive UDF (User Defined Function) in Java
  • Benutzung der JobControl Klasse zur Erzeugung von Workflows mit MapReduce Jobs
  • Benutzung von Oozie zur Definition und Planung von Workflows

Tag 1

  • Einführung in Hadoop 2.x und die Hortonworks Data Plattform
  • Das Hadoop Distributed File System (HDFS)
  • Das MapReduce-Framework
  • Ausführen von MapReduce-Jobs
  • Programmieren von MapReduce-Jobs
  • MapReduce – Optimierung der Map-Phase

Tag 2

  • MapReduce – Die Partitionierungs-Phase
  • MapReduce – Die Sortierungs-Phase
  • MapReduce – Eingabe- und Ausgabeformate
  • MapReduce – Unterstützung für Streaming

Tag 3

  • MapReduce – Optimierung von Jobs
  • MapReduce – Fortgeschrittene Themen
  • MapReduce – Unit Testing mit MRUnit
  • Programmieren mit HBase

Tag 4

  • Programmieren mit Pig
  • Programmieren mit Hive
  • Anlegen und Verwalten von Workflows mittels Oozie