Distributed Messaging with Apache Kafka Training Course
This course is for enterprise architects, developers, system administrators and anyone who wants to understand and use a high-throughput distributed messaging system. If you have more specific requirements (e.g. only system administration side), this course can be tailored to better suit your needs.
Course Outline
Overview of Distributed Messaging Systems
- Use Cases
- Alternatives to Kafka
Kafka API
- Producer API
- High Level Consumer API
- Simple Consumer API
- Kafka Hadoop Consumer API
Configuration
- New Producer
- Broker
- Consumer and Producer Configuration
Design
- Motivation
- Persistence
- Efficiency
- The Producer
- The Consumer
- Message Delivery Semantics
- Replication
Implementation
- API Design
- Network Layer
- Messages
- Message format
- Log
- Distribution
Basic Kafka Operations
- Adding and removing topics
- Modifying topics
- Graceful shutdown
- Balancing leadership
- Checking consumer position
- Mirroring data between clusters
- Expanding your cluster
- Decommissioning brokers
- Increasing replication factor
Other
- Datacenters
- Important Server Configs
- Important Client Configs
- Production Server Configs
- Monitoring
- ZooKeeper
Requirements
Basic system administration skills, understanding of any object oriented programming language.
Open Training Courses require 5+ participants.
Distributed Messaging with Apache Kafka Training Course - Booking
Distributed Messaging with Apache Kafka Training Course - Enquiry
Distributed Messaging with Apache Kafka - Consultancy Enquiry
Consultancy Enquiry
Testimonials (7)
Good prepared testing envoirment
Maciej Grabski
Course - Distributed Messaging with Apache Kafka
The documents
Jing Li - si ke xi tong (zhong guo) yan fa you xian gong si hang zhou fen gong si
Course - Distributed Messaging with Apache Kafka
Summary for the day, using white board to explain things step by step and the personal use cases that we are tasked to do.
Chee Meng Lee - CSIT
Course - Distributed Messaging with Apache Kafka
The preparation of virtual environments for participants to use and perform hands on learning.
marcus lim
Course - Distributed Messaging with Apache Kafka
Concepts, the way it presented, very communicative, very helpful, wide knowledge.
Sreenivasulu Narasingu - Welcome Real-time (ASPAC) Pte Ltd
Course - Distributed Messaging with Apache Kafka
The training was steered in the direction what the team wanted. The trainer is too good with vast experience in handling concepts like capability, performance, development and deployment standards and very swift in the training in addressing queries from different levels like regarding code, design, architecture and best practices etc.
Sarita Velagapudi - Welcome Real-time (ASPAC) Pte Ltd
Course - Distributed Messaging with Apache Kafka
The trainer really knows Kafka very well, and has a lot of production experience in the matter.
Matej Puntra
Course - Distributed Messaging with Apache Kafka
Provisional Upcoming Courses (Contact Us For More Information)
Related Courses
Apache Kafka Connect
7 HoursThis instructor-led, live training in Belgium (online or onsite) is aimed at developers who wish to integrate Apache Kafka with existing databases and applications for processing, analysis, etc.
By the end of this training, participants will be able to:
- Use Kafka Connect to ingest large amounts of data from a database into Kafka topics.
- Ingest log data generated by an application servers into Kafka topics.
- Make any collected data available for stream processing.
- Export data from Kafka topics into secondary systems for storage and analysis.
Building Kafka Solutions with Confluent
14 HoursThis instructor-led, live training (online or onsite) is aimed at engineers who wish to use Confluent (a distribution of Kafka) to build and manage a real-time data processing platform for their applications.
By the end of this training, participants will be able to:
- Install and configure Confluent Platform.
- Use Confluent's management tools and services to run Kafka more easily.
- Store and process incoming stream data.
- Optimize and manage Kafka clusters.
- Secure data streams.
Format of the Course
- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- This course is based on the open source version of Confluent: Confluent Open Source.
- To request a customized training for this course, please contact us to arrange.
Building Data Pipelines with Apache Kafka
7 HoursApache Kafka is a distributed streaming platform. It is de facto a standard for building data pipelines and it solves a lot of different use-cases around data processing: it can be used as a message queue, distributed log, stream processor, etc.
We'll start with some theory behind data pipelines in general, then continue with fundamental concepts behind Kafka. We'll also discover important components like Kafka Streams and Kafka Connect.
A Practical Introduction to Stream Processing
21 HoursIn this instructor-led, live training in Belgium (onsite or remote), participants will learn how to set up and integrate different Stream Processing frameworks with existing big data storage systems and related software applications and microservices.
By the end of this training, participants will be able to:
- Install and configure different Stream Processing frameworks, such as Spark Streaming and Kafka Streaming.
- Understand and select the most appropriate framework for the job.
- Process of data continuously, concurrently, and in a record-by-record fashion.
- Integrate Stream Processing solutions with existing databases, data warehouses, data lakes, etc.
- Integrate the most appropriate stream processing library with enterprise applications and microservices.
Kafka for Administrators
21 HoursThis instructor-led, live training in Belgium (online or onsite) is aimed at sysadmins who wish to set up, deploy, manage and optimize an enterprise-grade Kafka cluster.
By the end of this training, participants will be able to:
- Set up and administer a Kafka Cluster.
- Evaluate the benefits and disadvantages of deploying Kafka on-premise vs in the cloud.
- Deploy and monitor Kafka in using various on-premise and cloud environment tools.
Apache Kafka for Developers
21 HoursThis instructor-led, live training in Belgium (online or onsite) is aimed at intermediate-level developers who wish to develop big data applications with Apache Kafka.
By the end of this training, participants will be able to:
- Develop Kafka producers and consumers to send and read data from Kafka.
- Integrate Kafka with external systems using Kafka Connect.
- Write streaming applications with Kafka Streams & ksqlDB.
- Integrate a Kafka client application with Confluent Cloud for cloud-based Kafka deployments.
- Gain practical experience through hands-on exercises and real-world use cases.
Apache Kafka for Python Programmers
7 HoursThis instructor-led, live training in Belgium (online or onsite) is aimed at data engineers, data scientists, and programmers who wish to use Apache Kafka features in data streaming with Python.
By the end of this training, participants will be able to use Apache Kafka to monitor and manage conditions in continuous data streams using Python programming.
Kafka Fundamentals for Java Developers
14 HoursThis instructor-led, live training in Belgium (online or onsite) is aimed at intermediate-level Java developers who wish to integrate Apache Kafka into their applications for reliable, scalable, and high-throughput messaging.
By the end of this training, participants will be able to:
- Understand the architecture and core components of Kafka.
- Set up and configure a Kafka cluster.
- Produce and consume messages using Java.
- Implement Kafka Streams for real-time data processing.
- Ensure fault tolerance and scalability in Kafka applications.
Administration of Kafka Message Queue
14 HoursThis instructor-led, live training in Belgium (online or onsite) is aimed at intermediate-level system administrators who wish to harness Kafka's message queuing features effectively.
By the end of this training, participants will be able to:
- Understand Kafka's message queuing capabilities and architecture.
- Configure Kafka topics for message queuing scenarios.
- Produce and consume messages using Kafka.
- Monitor and manage Kafka as a message queue.
Security for Apache Kafka
7 HoursThis instructor-led, live training in Belgium (online or onsite) is aimed at software testers who wish to implement network security measures into an Apache Kafka application.
By the end of this training, participants will be able to:
- Deploy Apache Kafka onto a cloud based server.
- Implement SSL encryption to prevent attacks.
- Add ACL authentication to track and control user access.
- Ensure credible clients have access to Kafka clusters with SSL and SASL authentication.
Apache Kafka and Spring Boot
7 HoursThis instructor-led, live training in Belgium (online or onsite) is aimed at intermediate-level developers who wish to learn the fundamentals of Kafka and integrate it with Spring Boot.
By the end of this training, participants will be able to:
- Understand Kafka and its architecture.
- Learn how to install, configure, and set up a basic Kafka environment.
- Integrate Kafka with Spring Boot.
Stream Processing with Kafka Streams
7 HoursKafka Streams is a client-side library for building applications and microservices whose data is passed to and from a Kafka messaging system. Traditionally, Apache Kafka has relied on Apache Spark or Apache Storm to process data between message producers and consumers. By calling the Kafka Streams API from within an application, data can be processed directly within Kafka, bypassing the need for sending the data to a separate cluster for processing.
In this instructor-led, live training, participants will learn how to integrate Kafka Streams into a set of sample Java applications that pass data to and from Apache Kafka for stream processing.
By the end of this training, participants will be able to:
- Understand Kafka Streams features and advantages over other stream processing frameworks
- Process stream data directly within a Kafka cluster
- Write a Java or Scala application or microservice that integrates with Kafka and Kafka Streams
- Write concise code that transforms input Kafka topics into output Kafka topics
- Build, package and deploy the application
Audience
- Developers
Format of the course
- Part lecture, part discussion, exercises and heavy hands-on practice
Notes
- To request a customized training for this course, please contact us to arrange
Administration of Kafka Topic
14 HoursThis instructor-led, live training in Belgium (online or onsite) is aimed at beginner-level to intermediate-level system administrators who wish to learn how to effectively manage Kafka topics for efficient data streaming and processing.
By the end of this training, participants will be able to:
- Understand Kafka topic fundamentals and architecture.
- Create, configure, and manage Kafka topics.
- Monitor Kafka topics for health, performance, and availability.
- Implement security measures for Kafka topics.
Confluent KSQL
7 HoursThis instructor-led, live training in Belgium (online or onsite) is aimed at developers who wish to implement Apache Kafka stream processing without writing code.
By the end of this training, participants will be able to:
- Install and configure Confluent KSQL.
- Set up a stream processing pipeline using only SQL commands (no Java or Python coding).
- Carry out data filtering, transformations, aggregations, joins, windowing, and sessionization entirely in SQL.
- Design and deploy interactive, continuous queries for streaming ETL and real-time analytics.
SMACK Stack for Data Science
14 HoursThis instructor-led, live training in Belgium (online or onsite) is aimed at data scientists who wish to use the SMACK stack to build data processing platforms for big data solutions.
By the end of this training, participants will be able to:
- Implement a data pipeline architecture for processing big data.
- Develop a cluster infrastructure with Apache Mesos and Docker.
- Analyze data with Spark and Scala.
- Manage unstructured data with Apache Cassandra.