- Home
- Streaming Analytics Software
- Apache Samza
Apache Samza
What it is
Apache Samza is a free, self-hosted framework for building applications that process data from multiple sources in real time. It supports both stateless and stateful processing, with a scalable, fault-tolerant state store for stateful workloads. Developers can use its Streams API, Task API, Samza SQL, or Apache Beam API; Beam support for Python and Go is described as work in progress. Java and Scala applications can embed Samza as a lightweight client library. Built-in integrations include Apache Kafka, AWS Kinesis, Azure Event Hubs, Elasticsearch, and Apache Hadoop, and custom sources can also be connected. Samza can run on YARN, Kubernetes, or as a standalone library, with documentation covering public clouds, containerized environments, and bare-metal hardware. Host affinity and incremental checkpointing support task and state recovery after failures. The processing guarantee is at least once. Samza is distributed as source artifacts and through Maven; its download page says a binary release is not currently available. The project directs users to a mailing list for support.
For and against
For
- Free framework with SQL processing support.
- Integrates with Kafka, Kinesis, Event Hubs, Elasticsearch, and Hadoop.
- Runs on YARN, Kubernetes, or as a standalone library.
- Checkpointing supports recovery of tasks and state.
Against
- No binary release is currently available.
- Python and Go Beam support is work in progress.
- Processing guarantee is at least once.
The verdict
Samza offers several APIs, deployment choices, and built-in integrations for self-hosted stream processing. Teams should account for its source/Maven distribution and at-least-once processing guarantee.
Who it suits
Samza suits developers building real-time data applications who can manage a self-hosted framework. It is relevant to Java and Scala teams needing stateful or stateless processing.
Plans and prices
Apache Samza
Open-source stream-processing framework · source artifacts and Maven distribution
Read 2 Oct 2026 · samza.apache.org
On the record
- APIs
- It provides a high-level Streams API, a low-level Task API, Samza SQL, and an Apache Beam API; Python and Go support for Beam are described as work in progress.samza.apache.org · read 2 Oct 2026
- Deployment
- Samza supports deployment on YARN, Kubernetes, or as a standalone library, and its documentation describes running applications across public clouds, containerized environments, and bare-metal hardware.samza.apache.org · read 2 Oct 2026
- Distribution
- Samza is distributed as a source artifact and through Maven; the download page says it does not have a binary release at this time.samza.apache.org · read 2 Oct 2026
- Integrations
- Built-in integrations include Apache Kafka, AWS Kinesis, Azure Event Hubs, Elasticsearch, and Apache Hadoop, and custom sources can also be integrated.samza.apache.org · read 2 Oct 2026
- Processing
- Samza supports both stateless and stateful stream processing, with a scalable, fault-tolerant state store for stateful workloads.samza.apache.org · read 2 Oct 2026
- Processing guarantee
- Samza supports at-least-once processing.samza.apache.org · read 2 Oct 2026
- Purpose
- Apache Samza is a distributed stream-processing framework for building stateful applications that process data in real time from multiple sources.samza.apache.org · read 2 Oct 2026
- Recovery
- Samza supports host affinity and incremental checkpointing to help recover tasks and their associated state after failures.samza.apache.org · read 2 Oct 2026
- Scale
- The documentation says Samza has been used in applications with several terabytes of state and thousands of cores.samza.apache.org · read 2 Oct 2026
- Security
- The background documentation says Samza works with YARN, which supports Hadoop’s security model, and uses Linux cgroups for resource isolation.samza.apache.org · read 2 Oct 2026
- Support
- The project directs users to a user mailing list subscribed to by Samza users, contributors, and committers.samza.apache.org · read 2 Oct 2026
- Supported language
- Samza can be embedded as a lightweight client library in Java and Scala applications.samza.apache.org · read 2 Oct 2026