Skip to content
SPECIFICTION
Get listed

Apache Flink vs Apache Samza

Apache Flink

flink.apache.org

Apache Samza

samza.apache.org

Side by side

FigureApache FlinkApache Samza
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
LinuxYesYes
APIYesYes
Self-hostedYesYes
Plans published11
Spec score · Streaming Analytics Software8.0 (#7)7.8 (#11)
Spec score · Stream Analytics Software8.1 (#8)7.9 (#14)
Spec score · Stream Processing Software8.1 (#8)7.8 (#13)
Spec score · Big Data Analytics Software8.0 (#14)7.8 (#18)
APIsIts listed layered APIs include SQL on stream and batch data, the DataStream API, and ProcessFunction for time and state.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.
IntegrationsSeparately released connectors listed on the downloads page include AWS, Cassandra, Elasticsearch, Google Cloud PubSub, HBase, Hive, JDBC, Kafka, MongoDB, OpenSearch, Prometheus, Pulsar, and RabbitMQ.Built-in integrations include Apache Kafka, AWS Kinesis, Azure Event Hubs, Elasticsearch, and Apache Hadoop, and custom sources can also be integrated.

Plans

Apache Flink

  • Apache FlinkFree

Apache Flink pricing →

Apache Samza

  • Apache SamzaFree

Apache Samza pricing →

In their own words

Apache Flink

Apache Flink is a free, self-hosted framework and distributed processing engine for stateful computations over unbounded and bounded data streams. It supports event-driven applications, stream and batch analytics, and data pipelines and ETL. Listed correctness features include exactly-once state consistency, event-time processing and late-data handling. APIs include SQL for stream and batch data, DataStream and ProcessFunction for time and state. Operational capabilities cover flexible deployment, high availability, savepoints, scale-out architecture, very large state and incremental checkpoints. The project lists low latency, high throughput and in-memory computing. Flink runs in common cluster environments; for Kubernetes, the Kubernetes Operator is identified as the standard deployment mechanism. Connectors include AWS, Cassandra, Elasticsearch, Google Cloud PubSub, HBase, Hive, JDBC, Kafka, MongoDB, OpenSearch, Prometheus, Pulsar and RabbitMQ. Security requires configuration because SSL/TLS, REST authentication and SQL Gateway authentication are disabled by default. It is available at free under Apache License v2.

Visit flink.apache.org

Apache Samza

Apache Samza is a free, open-source distributed framework for applications that process data from multiple sources in real time. It supports stateless and stateful workloads, using a scalable, fault-tolerant state store for retained application state. Developers can use the high-level Streams API, lower-level Task API, Samza SQL or an 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, with custom sources also supported. Samza runs on YARN, Kubernetes or as a standalone library across public-cloud, containerized and bare-metal environments. Host affinity and incremental checkpointing help recover tasks and their state after failures. Processing is at least once. The project supports SQL processing and event-time windows, and its documentation describes applications with several terabytes of state and thousands of cores. Samza is self-hosted on Linux and distributed as source artifacts and through Maven; there is no binary release at this time.

Visit samza.apache.org