Developer for Apache Kafka
Descrizione
Con il corso di Apache Kafka scoprirai come progettare e realizzare applicazioni di real-time data streaming, scalabili orizzontalmente, robuste, oltre a fornire le conoscenze necessarie per sostenere l’esame “Confluent Certified Developer for Apache Kafka”
Target
Java Developer
Prerequisiti
Richiesta la conoscenza del linguaggio Java
Programma Corso
Module 1: Introduzione all'ecosistema software Kafka
- Il mondo Apache
- Concetti Base della Messagistica
- Principali modelli di Messagistica
- Protocolli
- Apache Kafka
- Campi di applicazione
- Kafka Connect
- Schema Registry
- REST Proxy
- Ksql
- Zookeeper
- Introduzione alle Kafka Java Client APIs
- Producer API
- Consumer API
- Streams API
- Connect API
- Installazione Ambiente di sviluppo
- Installazione di Zookepeer
- Installazione di Kafka
- Installazione di altri moduli Confluent
- Configurazione Java
- IDE di sviluppo Java
Module 2: Kafka
- Kafka's Command Line Tools
- Publish/Subscribe Messaging e Streaming
- Apache Kafka APIs, configuration and metrics
- Kafka Message & Message metadata
- Message"key selection" (scelte e fattori)
- Message schema management
- Osservazioni Generali
- Avro
- Topics, Partitions e Segments
- Log Replication & Log Compaction
- Consumers e Producers
- Consumer Groups
- Brokers & Cluster
- Il Flow completo di Kafka
- Approfondimenti
- Disk-Based Retention
- Scalabilità
- Alte performance
- Security
- Hardware
- Disk Throughput & Capacity
- RAM
- Rete e Schede di Rete
- CPU
- Zookeeper
- Ruolo di Zookeeper
- I metadati
- Cluster Zookeeper
Module 3: Integrazione e Sviluppo Software su Kafka
- Accedere a Kafka a livello di codice
- Le APIs Kafka
- Sviluppare un Producer
- Sviluppo di un Producer
- Configurazione e ottimizzazione del Producer
- Sviluppare un Consumer
- Sviluppo di un Consumer
- Configurazione e ottimizzazione del Consumer
- Sviluppo Avanzato
- Dimensioni e durata dei messaggi
- Abilitazione di Exactly Once Semantics (EOS)
- Uso degli offset
- Specificare gli Offsets
- Committare manualmente gli Offsets
- Consumer Liveness & Rebalancing
- Schema Management In Kafka
- Data Serialization
- Introduzione ad Avro e agli Gli Avro Records
- Avro Schemas & Schema Evolution
- Usare lo Schema Registry
- Tuning
Module 4: Kafka Avanzato
- Data Pipelines con Kafka Connect
- Kafka Connect
- Tipi di Connectors
- Kafka Connect Implementation
- Standalone & Distributed Modes
- Configurazione dei Connectors
- Stream Processing con Kafka Streams
- Kafka Streams API
- Kafka Streams Concepts
- Creare una Kafka Streams Application
- Kafka Streams by Example
- Managing Kafka Streams Processing
- Stream Processing con Confluent KSQL
- KSQL for Apache Kafka
- Scrivere KSQL Queries
- Avanzate:
- Risoluzione problemi del Client
- Debugging
- Performance, throughput, latency, scaling
- Ordine dei messaggi e garanzie di consegna
- Serialization/Deserialization
- Producer partition selection
- Consumer offset management
- Consumer Groups, partition assignments, partition rebalances
- Data retention strategies and implications
- Topic co-partitioning
- Data Protection
Module 5: LAB
- Esercitazione in aula.