Apache Kafka

Classroom Schulung | deutsch | Anspruch

Schulungsdauer: 2 Tage

Ziele

In diesem Kurs erhalten Sie einen Einblick in die Komponente Kafka sowie in das Erstellen von Anwendungen im Hadoop-Cluster.

Zielgruppe

  • (IT-)Architekt
  • (IT-)Entwickler

Voraussetzungen

Praktische Erfahrung in der IT-Informationsverarbeitung erforderlich. Kenntnisse in einer Programmiersprache, bevorzugt Java und/oder Python, erforderlich. Kenntnisse über Big Data sowie über Queuing-Mechanismen werden vorausgesetzt.

Folgende Seminare und Kurse zur Auffrischung der Kenntnisse um Big Data können hilfreich sein:

1) Einstiegs-Seminare (Schwierigkeitsgrad 100)

a. Big Data Einstieg
b. Big Data Technologien, Strategien und Trends
c. Hortonworks HDP Einstieg
d. Cloudera CDH Einstieg

2) Überblicks-Seminare (Schwierigkeitsgrad 200)

a. Big Data Architekturen Überblick
b. Hadoop Datentechnologien Überblick

Agenda

Architekturen – Batch vs. Stream in Hadoop

Die moderne Verarbeitung von Informationen muss nicht nur große Datenmengen handhaben können, sondern unter Umständen auch in der Lage sein, zeitnah Ergebnisse bereit zu stellen. Dies ist mit dem klassischen Architekturansatz nicht lösbar und so sind verschiedene Architekturansätze entstanden, die alle auf einer verteilten Speicherung und Verarbeitung der Daten beruhen und den unterschiedlichsten Anforderungen gerecht werden. In diesem Modul lernen Sie auf Hadoop basierende Architekturen kennen, die entweder für die Stapelverarbeitung oder die Verarbeitung nahe Echtzeit eingesetzt werden können sowie eine Kombination aus beiden Anforderungen.

Strukturen – Die logische Sicht auf die Daten in Kafka

In diesem Abschnitt wird die logische Datenarchitektur für Kafka erläutert, die aus Topics besteht, die in Partitionen und diese wiederum in Segmente gegliedert sind. Weitere Schwerpunkte sind die möglichen Varianten der Aufteilung der Daten in einer verteilten Implementierung sowie Überlegungen zur Liefergarantie.

Storage und Access – Der physische Zugriff auf die Daten mit Kafka

Physisch ist ein Segment eine Datei, auf die ein Consumer in der Interaktion mit ZooKeeper zugreift. In diesem Abschnitt werden Details dazu erläutert und demonstriert. Ein weiterer Schwerpunkt bildet die Behandlung möglicher Ausfall- und Wiederaufsetz-Szenarien.

Praxis 1 – Der programmatische Zugriff auf Kafka

Kafka ist in Java programmiert, weshalb die Java-APIs allererste Wahl für die Programmierung von Consumern und Producern sind. Allerdings wird in zunehmendem Maße auch Python genutzt, um Kafka zu konfektionieren. In diesem Praxisteil machen Sie sich mit den APIs vertraut und lernen darüber hinaus die Möglichkeiten von NiFi für die Programmierung von Kafka kennen.

Praxis 2 – Erstellung von Consumern für Kafka

Dieser Praxisteil legt den Schwerpunkt auf die Erstellung von Consumern für Kafka. Ausgehend von dem dafür existierenden Blueprint-Ansatz wird die Umsetzung mit Java und Python demonstriert. Sie erstellen in praktischen Aufgabenstellungen verschiedene Consumer mit Java und Python.

Praxis 3 – Erstellung von Producern für Kafka

Dieser Praxisteil legt den Schwerpunkt auf die Erstellung von Producern für Kafka. Ausgehend von dem dafür existierenden Blueprint-Ansatz wird die Umsetzung mit Java und Python demonstriert. In praktischen Aufgabenstellungen erstellen Sie verschiedene Producer mit Java und Python.

Praxis 4 - Optimierung von Kafka im Hadoop Cluster

In diesem Praxisteil wird der Schwerpunkt auf praktische Aspekte des Betriebs von Kafka im Hadoop-Cluster gelegt und werden Optimierungshinweise gegeben. Ein praktischer Teil zu Logging und Monitoring für Kafka rundet diesen Abschnitt ab.

Ziele

In diesem Kurs erhalten Sie einen Einblick in die Komponente Kafka sowie in das Erstellen von Anwendungen im Hadoop-Cluster.

Zielgruppe

  • (IT-)Architekt
  • (IT-)Entwickler

Voraussetzungen

Praktische Erfahrung in der IT-Informationsverarbeitung erforderlich. Kenntnisse in einer Programmiersprache, bevorzugt Java und/oder Python, erforderlich. Kenntnisse über Big Data sowie über Queuing-Mechanismen werden vorausgesetzt.

Folgende Seminare und Kurse zur Auffrischung der Kenntnisse um Big Data können hilfreich sein:

1) Einstiegs-Seminare (Schwierigkeitsgrad 100)

a. Big Data Einstieg
b. Big Data Technologien, Strategien und Trends
c. Hortonworks HDP Einstieg
d. Cloudera CDH Einstieg

2) Überblicks-Seminare (Schwierigkeitsgrad 200)

a. Big Data Architekturen Überblick
b. Hadoop Datentechnologien Überblick

Agenda

Architekturen – Batch vs. Stream in Hadoop

Die moderne Verarbeitung von Informationen muss nicht nur große Datenmengen handhaben können, sondern unter Umständen auch in der Lage sein, zeitnah Ergebnisse bereit zu stellen. Dies ist mit dem klassischen Architekturansatz nicht lösbar und so sind verschiedene Architekturansätze entstanden, die alle auf einer verteilten Speicherung und Verarbeitung der Daten beruhen und den unterschiedlichsten Anforderungen gerecht werden. In diesem Modul lernen Sie auf Hadoop basierende Architekturen kennen, die entweder für die Stapelverarbeitung oder die Verarbeitung nahe Echtzeit eingesetzt werden können sowie eine Kombination aus beiden Anforderungen.

Strukturen – Die logische Sicht auf die Daten in Kafka

In diesem Abschnitt wird die logische Datenarchitektur für Kafka erläutert, die aus Topics besteht, die in Partitionen und diese wiederum in Segmente gegliedert sind. Weitere Schwerpunkte sind die möglichen Varianten der Aufteilung der Daten in einer verteilten Implementierung sowie Überlegungen zur Liefergarantie.

Storage und Access – Der physische Zugriff auf die Daten mit Kafka

Physisch ist ein Segment eine Datei, auf die ein Consumer in der Interaktion mit ZooKeeper zugreift. In diesem Abschnitt werden Details dazu erläutert und demonstriert. Ein weiterer Schwerpunkt bildet die Behandlung möglicher Ausfall- und Wiederaufsetz-Szenarien.

Praxis 1 – Der programmatische Zugriff auf Kafka

Kafka ist in Java programmiert, weshalb die Java-APIs allererste Wahl für die Programmierung von Consumern und Producern sind. Allerdings wird in zunehmendem Maße auch Python genutzt, um Kafka zu konfektionieren. In diesem Praxisteil machen Sie sich mit den APIs vertraut und lernen darüber hinaus die Möglichkeiten von NiFi für die Programmierung von Kafka kennen.

Praxis 2 – Erstellung von Consumern für Kafka

Dieser Praxisteil legt den Schwerpunkt auf die Erstellung von Consumern für Kafka. Ausgehend von dem dafür existierenden Blueprint-Ansatz wird die Umsetzung mit Java und Python demonstriert. Sie erstellen in praktischen Aufgabenstellungen verschiedene Consumer mit Java und Python.

Praxis 3 – Erstellung von Producern für Kafka

Dieser Praxisteil legt den Schwerpunkt auf die Erstellung von Producern für Kafka. Ausgehend von dem dafür existierenden Blueprint-Ansatz wird die Umsetzung mit Java und Python demonstriert. In praktischen Aufgabenstellungen erstellen Sie verschiedene Producer mit Java und Python.

Praxis 4 - Optimierung von Kafka im Hadoop Cluster

In diesem Praxisteil wird der Schwerpunkt auf praktische Aspekte des Betriebs von Kafka im Hadoop-Cluster gelegt und werden Optimierungshinweise gegeben. Ein praktischer Teil zu Logging und Monitoring für Kafka rundet diesen Abschnitt ab.

Diese Seite weiterempfehlen