Kafka Streams API for Confluent Platform (2024)

This section provides a quick introduction to the Streams API of Apache Kafka®.

The Kafka Streams API in a Nutshell

The Streams API of Kafka, available through a Java library, can be used to build highly scalable, elastic,fault-tolerant, distributed applications, and microservices. First and foremost, the Kafka Streams API allows youto create real-time applications that power your core business.It is the easiest yet the most powerful technology to process data stored in Kafka. It builds upon importantconcepts for stream processing such as efficient management of application state, fast andefficient aggregations and joins, properly distinguishing between event-time and processing-time, and seamless handlingof out-of-order data.

A unique feature of the Kafka Streams API is that the applications you build with it are normal Java applications.These applications can be packaged, deployed, and monitored like any other Java application – there isno need to install separate processing clusters or similar special-purpose and expensive infrastructure!

Kafka Streams API for Confluent Platform (1)

An application that uses the Kafka Streams API is a normal Java application.Package, deploy, and monitor it like you would do for any other Java application.Even so, your application will be highly scalable, elastic, and fault-tolerant.

Use Case Examples

The Kafka Streams API is applicable to a wide range of use cases and industries.

  • Travel companies can build applications with the Kafka Streams API to make real-time decisions to find best suitablepricing for individual customers, to cross-sell additional services, and to process bookings and reservations.
  • The finance industry can build applications to aggregate data sources for real-time views of potential exposures andfor detecting and minimizing fraudulent transactions.
  • Logistics companies can build applications to track their shipments fast, reliably, and in real-time.
  • Retailers can build applications to decide in real-time on next best offers, personalized promotions, pricing, andinventory management.
  • Automotive and manufacturing companies can build applications to ensure their production lines perform optimally, togain real-time insights into their supply chains, and to monitor telemetry data from connected cars to decide if aninspection is needed.
  • And many more.

A Closer Look

Before you dive into the Concepts andArchitecture, get your feet wet by walkingthrough your first Kafka Streams application,let’s take a closer look.

A key motivation of the Kafka Streams API is to bring stream processing out of the Big Data niche into the world ofmainstream application development, and to radically improve the developer and operations experience bymaking stream processing simple and easy.Using the Kafka Streams API you can implement standard Java applications to solve your stream processing needs –whether at small or at large scale – and then run these applications on client machines at the perimeter of yourKafka cluster. Your applications are fully elastic: you can run one or more instances of your application, and theywill automatically discover each other and collaboratively process the data. Your applications are also fault-tolerant:if one of the instances dies, then the remaining instances will automatically take over its work – without any dataloss! Deployment-wise, you are free to choose from any technology that can deploy Java applications, includingbut not limited to Puppet, Chef, Ansible, Docker, Mesos, YARN, Kubernetes, and so on.This lightweight and integrative approach of the Kafka Streams API – “Build applications, not infrastructure!” – is instark contrast to other stream processing tools that require you to install and operate separate processing clusters andsimilar heavy-weight infrastructure that come with their own special set of rules on how to use and interact with them.

The following list highlights several key capabilities and aspects of the Kafka StreamsAPI that make it a compelling choice for use cases such as microservices, event-driven systems, reactive applications,and continuous queries and transformations.

Powerful
Lightweight
  • Low barrier to entry
  • Equally viable for small, medium, large, and very large use cases
  • Smooth path from local development to large-scale production
  • No processing cluster required
  • No external dependencies other than Kafka
Fully integrated
  • 100% compatible with Kafka 0.11.0 and 1.0.0
  • Easy to integrate into existing applications and microservices
  • No artificial rules for packaging, deploying, and monitoring your applications
  • Runs everywhere: on-premises, public clouds, private clouds, containers, etc.
  • Integrates with databases through continuous change data capture (CDC) performed byKafka Connect
Real-time
  • Millisecond processing latency
  • Record-at-a-time processing (no micro-batching)
  • Seamlessly handles out-of-order data
  • High throughput
Secure

In summary, the Kafka Streams API is a compelling choice for building mission-critical stream processing applicationsand microservices. Give it a try with this step-by-step tutorial to build your first Kafka Streams application!The next sections, Concepts, Architecture,and the Developer Guide will help to get you started.

Tip

Reading tip:If you are interested in learning about our original motivation to create the Kafka Streams API, you may want to readthe Confluent blog postIntroducing Kafka Streams: Stream Processing Made Simple.

Requirements

Kafka

The following versions are supported:

Kafka Broker (columns)

Streams API (rows)

3.0.x / 0.10.0.x

3.1.x / 0.10.1.x and

3.2.x / 0.10.2.x

3.3.x / 0.11.0.x and

4.0.x / 1.0.x and

4.1.x / 1.1.x and

5.0.x / 2.0.x and

5.1.x / 2.1.x and

5.2.x / 2.2.x and

5.3.x / 2.3.x and

5.4.x / 2.4.x and

5.5.x / 2.5.x and

6.0.x / 2.6.x and

6.1.x / 2.7.x and

6.2.x / 2.8.x and

7.0.x / 3.0.x and

7.1.x / 3.1.x and

7.2.x / 3.2.x and

7.3.x / 3.3.x and

7.4.x / 3.4.x and

7.5.x / 3.5.x and

7.6.x / 3.6.x and

7.7.x / 3.7.x

3.0.x / 0.10.0.x

compatible

compatible

compatible

3.1.x / 0.10.1.x and

3.2.x / 0.10.2.x

compatible

compatible

3.3.x / 0.11.0.x

compatible with exactly-once turned

off (requires broker version

Confluent Platform 3.3.x or higher)

compatible

4.0.x / 1.0.x and

4.1.x / 1.1.x and

5.0.x / 2.0.x and

5.1.x / 2.1.x and

5.2.0 / 2.2.0 and

5.2.1 / 2.2.0

compatible with exactly-once turned

off (requires broker version

Confluent Platform 3.3.x or higher);

requires message format 0.10 or higher;

message headers are not supported

(requires broker version Confluent

Platform 3.3.x or higher with message

format 0.11 or higher)

compatible;

requires message format

0.10 or higher;

if message headers are

used, message format

0.11 or higher required

5.2.2 / 2.2.1 and

5.3.x / 2.3.x and

5.4.x / 2.4.x and

5.5.x / 2.5.x and

6.0.x / 2.6.x and

6.1.x / 2.7.x and

6.2.x / 2.8.x and

7.0.x / 3.0.x and

7.1.x / 3.1.x and

7.2.x / 3.2.x and

7.3.x / 3.3.x and

7.4.x / 3.4.x and

7.5.x / 3.5.x and

7.6.x / 3.6.x and

7.7.x / 3.7.x

compatible;

requires message format

0.11 or higher;

enabling exactly-once v2

requires Confluent Platform

5.4.x or higher

The Streams API is not compatible with Kafka clusters running older Kafka versions (0.7, 0.8, 0.9).

Confluent

Note

This website includes content developed at the Apache Software Foundationunder the terms of the Apache License v2.

Kafka Streams API for Confluent Platform (2024)
Top Articles
Defining Ethical Behavior in the Workplace | Work Institute
Astrological Remedies for Weight Loss, Weight Gain, Obestiy | - Times of India
English Bulldog Puppies For Sale Under 1000 In Florida
Katie Pavlich Bikini Photos
Gamevault Agent
Pieology Nutrition Calculator Mobile
Hocus Pocus Showtimes Near Harkins Theatres Yuma Palms 14
Hendersonville (Tennessee) – Travel guide at Wikivoyage
Compare the Samsung Galaxy S24 - 256GB - Cobalt Violet vs Apple iPhone 16 Pro - 128GB - Desert Titanium | AT&T
Vardis Olive Garden (Georgioupolis, Kreta) ✈️ inkl. Flug buchen
Craigslist Dog Kennels For Sale
Things To Do In Atlanta Tomorrow Night
Non Sequitur
Crossword Nexus Solver
How To Cut Eelgrass Grounded
Pac Man Deviantart
Alexander Funeral Home Gallatin Obituaries
Shasta County Most Wanted 2022
Energy Healing Conference Utah
Aaa Saugus Ma Appointment
Geometry Review Quiz 5 Answer Key
Hobby Stores Near Me Now
Icivics The Electoral Process Answer Key
Allybearloves
Bible Gateway passage: Revelation 3 - New Living Translation
Yisd Home Access Center
Home
Shadbase Get Out Of Jail
Gina Wilson Angle Addition Postulate
Celina Powell Lil Meech Video: A Controversial Encounter Shakes Social Media - Video Reddit Trend
Walmart Pharmacy Near Me Open
Marquette Gas Prices
A Christmas Horse - Alison Senxation
Ou Football Brainiacs
Access a Shared Resource | Computing for Arts + Sciences
Vera Bradley Factory Outlet Sunbury Products
Pixel Combat Unblocked
Cvs Sport Physicals
Mercedes W204 Belt Diagram
Mia Malkova Bio, Net Worth, Age & More - Magzica
'Conan Exiles' 3.0 Guide: How To Unlock Spells And Sorcery
Teenbeautyfitness
Where Can I Cash A Huntington National Bank Check
Topos De Bolos Engraçados
Sand Castle Parents Guide
Gregory (Five Nights at Freddy's)
Grand Valley State University Library Hours
Holzer Athena Portal
Hello – Cornerstone Chapel
Stoughton Commuter Rail Schedule
Selly Medaline
Latest Posts
Article information

Author: Kimberely Baumbach CPA

Last Updated:

Views: 6079

Rating: 4 / 5 (41 voted)

Reviews: 80% of readers found this page helpful

Author information

Name: Kimberely Baumbach CPA

Birthday: 1996-01-14

Address: 8381 Boyce Course, Imeldachester, ND 74681

Phone: +3571286597580

Job: Product Banking Analyst

Hobby: Cosplaying, Inline skating, Amateur radio, Baton twirling, Mountaineering, Flying, Archery

Introduction: My name is Kimberely Baumbach CPA, I am a gorgeous, bright, charming, encouraging, zealous, lively, good person who loves writing and wants to share my knowledge and understanding with you.