NEW
A streaming-centric architecture that uses a single real-time pipeline and reprocesses from immutable logs, avoiding separate batch and speed layers.
DESCRIPTION
Kappa Architecture proposes a unified streaming path for all data processing, replacing Lambda Architecture’s dual batch and speed layers with log-centric reprocessing. It emphasizes immutable append-only logs, event-driven computation, and reprocessing by replay rather than maintaining two divergent codebases. This simplifies operations and reduces architectural complexity while enabling real-time analytics. Kappa is closely associated with Kafka-centric designs and event sourcing. It is well-suited to use cases requiring low-latency insights and consistent reprocessing of historical events.
ALTERNATIVE DEFINITIONS
Wikipedia
Kappa architecture is a data processing architecture that aims to simplify the Lambda architecture by using a single streaming layer where all data is processed as a stream.
Focuses on simplifying Lambda by eliminating the batch layer in favor of a single stream.
O’Reilly Radar (Jay Kreps)
The Kappa Architecture is a new paradigm of building data systems that has no batch layer, and instead reprocesses data by replaying from an immutable log.
Authored by Jay Kreps, it stresses replay from logs as the mechanism for reprocessing without batch.
Confluent
Kappa Architecture proposes a single stream processing pipeline for both real-time and reprocessing workloads, built around a durable, immutable log.
Vendor perspective that ties the approach to Kafka-style durable logs and stream processing.
RELATED TERMS
Stream Processing Event Sourcing Apache Kafka Change Data Capture Pipelines Real-time Analytics Apache Flink Spark Streaming Message Log
COMPETING TERMS
Lambda Architecture
KNOWLEDGE AREAS
Data Architecture Real-time & Streaming Data Data Engineering Infrastructure
TARGET AUDIENCE
Data Architect Data Engineer Cloud Architect Solution Architect Software Architect
EXTERNAL SOURCES
- Wikipedia - Kappa architecture
- Confluent - Vendor blog introducing Kappa
- O’Reilly Radar - Thought leadership critique of Lambda
- Confluent Docs - Stream processing concepts and logs
TOP QUESTIONS
Why did Kappa Architecture emerge as an alternative to Lambda Architecture?
Kappa reduces operational complexity by removing the batch layer. It avoids duplicated code and leverages log replay for reprocessing.
Category: Origin
When is Kappa Architecture most appropriate?
Use Kappa when all workloads can be executed as streams and historical reprocessing is feasible via event log replay.
Category: Requirements
What is a common mistake when implementing Kappa Architecture?
Retaining batch pipelines alongside streaming undermines Kappa’s simplicity and creates synchronization challenges.
Category: Mistakes
How does Kappa Architecture handle reprocessing?
It replays events from an immutable log through the same streaming pipeline, ensuring consistency and simplifying code maintenance.
Category: Management
What tools are often used with Kappa Architecture?
Apache Kafka, Kafka Streams, Flink, and Spark Structured Streaming are common choices for durable logs and stream processing.
Category: Overview
What are risks of Kappa Architecture?
Replay at scale can be operationally heavy; careful capacity planning and checkpointing are essential.
Category: Risks
How does Kappa Architecture relate to event sourcing?
Both rely on immutable event logs; Kappa generalizes streaming pipelines across real-time and reprocessing workloads.
Category: Example
What is the biggest misunderstanding about Kappa Architecture?
That it forbids any batch operations; rather, it prefers stream-first designs with log-centric reprocessing.
Category: Misunderstanding
What is a competing term to Kappa Architecture?
Lambda Architecture, which separates batch and speed layers, is the canonical comparison point.
Category: Alternatives