Skip to content

Intermediate Tutorials

Welcome to the KSML intermediate tutorials! These tutorials are designed for users who have completed the beginner tutorials and are ready to explore more advanced KSML features and patterns.

These tutorials will help you build more sophisticated data processing applications with KSML, introducing stateful operations, joins, and other advanced concepts.

Available Tutorials

Branching: Conditional Message Routing

Master KSML's branching capabilities to route messages based on conditions:

  • Understanding KSML branching and its relationship to Kafka Streams
  • Simple content-based routing patterns
  • Complex multi-condition business logic
  • Advanced branching patterns and best practices
  • Error handling with branches

Working with Aggregations

Learn how to use KSML's stateful operations to aggregate data:

  • Counting events by key
  • Calculating running averages
  • Using custom aggregation functions
  • Understanding state stores

Implementing Joins

This tutorial covers how to join data from multiple streams:

  • Stream-to-stream joins
  • Stream-to-table joins
  • Global table joins
  • Handling join windows and grace periods

Using Windowed Operations

Learn how to process data within time windows:

  • Tumbling windows
  • Hopping windows
  • Session windows
  • Sliding windows
  • Time-based aggregations

Error Handling and Recovery

This tutorial focuses on building robust KSML applications:

  • Handling malformed data
  • Implementing dead letter queues
  • Recovering from errors
  • Monitoring and alerting

Working with State Stores

Learn how to use and manage state in your KSML applications:

  • Creating and configuring state stores
  • Reading from and writing to state stores
  • Handling state store failures
  • State store backup and recovery

Learning Path

We recommend following these tutorials in order, as they build on concepts introduced in previous tutorials.

Next Steps

After mastering these intermediate concepts, you're ready for the most advanced KSML topics:

👉 Continue to Advanced Tutorials to learn about custom processors, performance optimization, and integration with external systems.