Duration
2 Days
12 CPD hours
This course is intended for
This in an Introductory and beyond level course is geared for experienced Java
developers seeking to be proficient in Apache Kafka. Attendees should be
experienced developers who are comfortable with Java, and have reasonable
experience working with databases.
Overview
Working in a hands-on learning environment, students will explore
Overview of Streaming technologies
Kafka concepts and architecture
Programming using Kafka API
Kafka Streams
Monitoring Kafka
Tuning / Troubleshooting Kafka
Apache Kafka is a real-time data pipeline processor. It high-scalability, fault
tolerance, execution speed, and fluid integrations are some of the key hallmarks
that make it an integral part of many Enterprise Data architectures. In this lab
intensive two day course, students will learn how to use Kafka to build
streaming solutions.
INTRODUCTION TO STREAMING SYSTEMS
* Fast data
* Streaming architecture
* Lambda architecture
* Message queues
* Streaming processors
INTRODUCTION TO KAFKA
* Architecture
* Comparing Kafka with other queue systems (JMS / MQ)
* Kaka concepts : Messages, Topics, Partitions, Brokers, Producers, commit logs
* Kafka & Zookeeper
* Producing messages
* Consuming messages (Consumers, Consumer Groups)
* Message retention
* Scaling Kafka
PROGRAMMING WITH KAFKA
* Configuration parameters
* Producer API (Sending messages to Kafka)
* Consumer API (consuming messages from Kafka)
* Commits , Offsets, Seeking
* Schema with Avro
KAFKA STREAMS
* Streams overview and architecture
* Streams use cases and comparison with other platforms
* Learning Kafka Streaming concepts (KStream, KTable, KStore)
* KStreaming operations (transformations, filters, joins, aggregations)
ADMINISTERING KAFKA
* Hardware / Software requirements
* Deploying Kafka
* Configuration of brokers / topics / partitions / producers / consumers
* Security: How secure Kafka cluster, and secure client communications (SASL,
Kerberos)
* Monitoring : monitoring tools
* Capacity Planning : estimating usage and demand
* Trouble shooting : failure scenarios and recovery
MONITORING AND INSTRUMENTING KAFKA
* Monitoring Kafka
* Instrumenting with Metrics library
* Instrument Kafka applications and monitor their performance