Apache Kafka
Classroom Schulung | Deutsch | Anspruch
Schulungsdauer: 2 Tage Durchführung gesichert
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.