Event Sourcing Using Apache Kafka | Confluent
Mar 13, 2018Adam Warski

Summary
This post introduces event sourcing as a pattern that can be implemented using Apache Kafka. It outlines three strategies for storing events in Kafka (single topic, topic-per-entity-type, topic-per-entity) and discusses the trade-offs. It details how Kafka Streams and its state stores can be used to efficiently manage and query the current state of entities derived from event streams. The post also covers interactive queries for cross-node state access, changelog topics and standby replicas for fault tolerance, and the use of Kafka's transactional capabilities for exactly-once processing guarantees.
More from the Event-Driven Architectures trail
- InfiniteWatch + Confluent: Turning Customer Interaction Data into Real-Time Intelligence
- Streaming Data Integration with Apache Kafka® vs ETL
- Why Microservices Need Event-Driven Architectures for Agility and Scale
- How to Build Real-Time, Event-Driven Automation for Business Insights
- How to Build Real-Time Alerts to Stay Ahead of Critical Events