Apache Kafka is a publish-subscribe messaging rethought as a distributed commit log, capable of handling hundreds of megabytes of reads and writes per second from thousands of clients on each broker. A Kafka cluster can serve as the central data backbone for a large organization.

Audience: This course is specifically designed for software developers.
Course Duration: 2 days

Participants should have basic computer literacy (Windows, Mac or Linux) and a desire to learn and use Kafka messaging system. Command line skills are optional.

Hardware and Software Requirements:

There is no need to install Hadoop software on students’ machines for this course. A working environment will be provided. Students will only need an SSH client (Linux and Mac already have ssh clients; Putty is recommended for Windows).

Course Outline:
  • Introducing Kafka
    • History
    • Why Kafka?
    • Kafka at LinkedIn
    • Kafka Adoption in the Industry
    • Homage to the Creator of Metamorphosis


  • Kafka Core Concepts
    • Topics
    • Partitions
    • Replicas
    • Producers
    • Consumers
    • Brokers


  • Operating Kafka
    • Architecture
    • Hardware Specs
    • Deploying
    • Monitoring
    • Performance
    • Scalability Tuning


  • Developing Kafka Apps
    • Writing to Kafka
    • Reading from Kafka
    • Testing
    • Serialization
    • Compression
    • Example Apps with kafka-­storm-­starter


  • Playing with Kafka Using Wirbelsturm