Kafka Streaming App Part 1 - Sun, Oct 11, 2020
First part of a series of posts on how to develop a Kafka Streaming App
Kafka Streaming App Part 1
I recently read about the application of Apache Kafka in the financial industry . And although details of these solutions are not available, reading this brought an interesting question to my mind:
How to build a transactional streaming application in Kafka without a database ?
This and the following articles describe how you can leverage Kafka transactions , Kafka's Exactly-Once Semantic for message delivery and message ordering guarantees in order to create a transactional streaming application.
The use case is very simple:
- A banking account to which money can be deposited and withdraw
With the main functional challenge being that money can only been withdrawn when the account contains sufficient funds while technically maintaining elasticity of the streaming application.
The topology of the streaming application consists of a stream processor that will read account events, update the balance of the account and write account events indicating a success or failure of the transaction:
Now that the basic requirements and first design are outlined, let’s get into the first [implementation details] (http://www.google.de )