Apache Kafka

PT27036
Summary
Apache Kafka is a real-time data pipeline processor. Its 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. The Apache Kafka distributed streaming platform is one of the most powerful and widely used reliable streaming platforms. Kafka is fault tolerant, highly scalable and used for log aggregation, stream processing, event sources and commit logs. Kafka is used by LinkedIn, Yahoo, Twitter, Square, Uber, Box, PayPal, Etsy and more to enable stream processing, online messaging, facilitate in-memory computing by providing a distributed commit log, data collection for big data and so much more. In this lab intensive four-day course, students will learn how to use Kafka to build streaming solutions. This is an intermediate-level, skills-based hands-on training course that requires intermediate level developer skills and knowledge. Attending students should be experienced developers who have current experience working with Java in a practical programming environment. Experience with messaging systems or streaming is also helpful. This course focuses on programming rather than the configuration management of Kafka clusters or DevOps. It starts off with the installation and setting up the development environment, before quickly moving on to performing fundamental messaging operations such as validation and enrichment. Working in a hands-on environment, you’ll explore message composition with pure Kafka API and Kafka Streams as well as the transformation of messages in different formats, such asext, binary, XML, JSON, and AVRO. Next, you will learn how to expose the schemas contained in Kafka with the Schema Registry. You will then learn how to work with all relevant connectors with Kafka Connect.
Prerequisites
This is an intermediate-level, skills-based hands-on training course that requires intermediate level developer skills and knowledge. Attendees should be experienced developers who are comfortable with Java, and have reasonable experience working with databases. Students should also be able to navigate Linux command lines, and who have basic knowledge of Linux editors (such as VI / nano) for editing code. Experience with messaging systems or streaming is also helpful. Take Before: Students should have attended the course(s) below, or should have basic skills in these areas: Core Java Programming Fundamentals.
Duration
3 Days/Lecture & Lab
Audience
Attendees should be experienced developers who are comfortable with Java, and have reasonable experience working with databases.
Topics
  • Kafka Overview
  • What is Kafka
  • Kafka Architecture
  • Kafka Versus
  • Kafka Topics
  • Kafka Producers
  • Kafka Consumers
  • Using Kafka Single Node
  • Kafka Cluster and Failover
  • Kafka Ecosystem
  • Intro to Producers
  • Advanced Producers
  • About the App
  • Producer Shutdown
  • Kafka Low Level Design
  • Log Compaction
  • Introduction to Consumers
  • Advanced Consumers
  • Avro and the Schema Registry
  • Security (Optional)
  • SSL (Optional)
  • SASL (Optional)
  • SASL Plain (Optional)
  • SASL Scram (Optional)
  • Mirror Maker (Optional)

Related Scheduled Courses