-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
39 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,47 @@ | ||
# Kafka Streams API | ||
|
||
Kafka Streams is a library that can be used to enable stream processing | ||
capabilities on your applications. | ||
|
||
This means that you can process data "on the fly" (i.e. subscribe to | ||
events on Kafka) and producer new events. This sounds very similar to | ||
Producer and Consumer API, and it is because those are used inside | ||
Kafka Streams. But plus consuming and producing events, the capabilities to process | ||
the stream is what makes Streams a powerful API. | ||
|
||
## Streams Topology | ||
|
||
## DSL: Stateless Operations | ||
There are 2 APIs in Kafka Streams: | ||
|
||
* Processor API | ||
* Streams DSL | ||
|
||
Where the API define `Processor` stages where data that comes from | ||
Sources (i.e. Topics) are processed. | ||
|
||
But we have a DSL that simplifies the processing of data, and have common | ||
operators to process data (e.g. mapping, filtering, joining, etc.) | ||
|
||
The goal of these APIs is to define a `Topology` that represents | ||
the Stream Application. | ||
|
||
![](stream-process.png) | ||
|
||
## Streams DSL | ||
|
||
Inside Kafka Streams DSL API, there are 2 main abstractions: | ||
|
||
* `KStreams` | ||
* `KTable` | ||
|
||
`KStreams` represents data in motion and `KTable` represents data at rest. | ||
|
||
Both notions are key to implement Streaming Applications. | ||
|
||
### DSL: Stateless Operations | ||
|
||
## DSL: Stateful Operations | ||
### DSL: Stateful Operations | ||
|
||
## Tables and Joins | ||
### Tables and Joins | ||
|
||
## Windows |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.