Confluent Stream Processing using Apache Kafka® Streams & KSQL - Agilitics

Confluent Stream Processing using Apache Kafka® Streams & KSQL

During this instructor-led, hands-on course, you will learn to: Identify common patterns and use cases for real-time stream processing Understand the high level architecture of Kafka Streams Write real-time applications with the Kafka Streams API to filter, transform, enrich, aggregate, and join data streams Describe how KSQL combines the elastic, fault-tolerant, high-performance stream processing capabilities of Kafka Streams with the simplicity of a SQL-like syntax Author KSQL queries that showcase its balance of power and simplicity Test, secure, deploy, and monitor Kafka Streams applications and KSQL queries

Duration: 3 days
Time: 9am to 5pm

What Will Be Taught For This Stream Processing using Apache Kafka® Streams Course?

Motivation and Concepts for Streams

Motivation and Use Cases for Real-Time Streaming

High Level Comparison of Kafka Streams and KSQL

Stream Processing Concepts

Kafka Streams Architecture

Kafka Streams’ Place in the Kafka Ecosystem

High Level Architecture Design

Kafka Streams Data Types

Writing Kafka Streams Applications

Anatomy of a Kafka Streams Application

Kafka Streams DSL – Stateless Operations

Kafka Streams DSL – Aggregations

Kafka Streams DSL – Windowed aggregations

Kafka Streams DSL – Joins

Kafka Streams DSL – Summary

Processor API


Testing Kafka Streams Applications

Unit Tests

Integration Tests

Stress Tests

End-to-end Tests

Introduction to KSQL

Sample Use Cases

End-to-end Examples

Interacting with KSQL

Using KSQL

Data Manipulation






Fault tolerance

Capacity planning


KSQL-specific considerations


Security Overview

Access Control


KSQL-specific considerations



Confluent Control Center

KSQL-specific Consideration

 Stream Processing using Apache Kafka® Streams

Monitoring and alerting.
Incident response.

Audience Prerequisites

Attendees should be familiar with developing professional apps in Java (preferred), .NET, C#, Python, or other major programming language. Participants are required to provide a laptop computer with unobstructed internet access to fully participate in the class.

Additionally, students require a strong knowledge of the Apache Kafka architecture as well as knowledge of Kafka client application development, either through prior experience or by taking the recommended prerequisites, Confluent Fundamentals of Apache Kafka® and Confluent Developer Skills for Building Apache Kafka®.

To get the most out of this course, participants should:

This course is designed for application developers, architects, DevOps engineers, and data scientists who need to interact with Kafka clusters to create real-time applications to filter, transform, enrich, aggregate, and join data streams to discover anomalies, analyze behavior, or monitor complex systems.

× How can I help you?