StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Application & Data
  3. Databases
  4. Big Data Tools
  5. Apache Flink vs Apex

Apache Flink vs Apex

OverviewDecisionsComparisonAlternatives

Overview

Apache Flink
Apache Flink
Stacks534
Followers879
Votes38
GitHub Stars25.4K
Forks13.7K
Apex
Apex
Stacks503
Followers117
Votes0
GitHub Stars33
Forks56

Apache Flink vs Apex: What are the differences?

Introduction: Apache Flink and Apex are both open-source stream processing platforms that provide real-time processing capabilities. While they share similarities in their functionality, there are key differences that set them apart.

  1. Processing Model: Apache Flink uses a parallel data processing model, where data is processed as streams or batches, with support for event time processing. In contrast, Apex follows a DAG (Directed Acyclic Graph) model, which allows for building complex data processing pipelines with parallel and sequential processing stages.

  2. Fault Tolerance: Apache Flink provides fault-tolerance through a mechanism called Checkpointing, where the state of the system is periodically saved for recovery in case of failures. On the other hand, Apex offers fault-tolerance through the use of an in-memory distributed parallel system that can recover from failures without losing any data.

  3. Event Processing Guarantees: Apache Flink offers strong consistency guarantees for event processing, ensuring that events are processed exactly once or at most once. In comparison, Apex provides customizable event processing guarantees, allowing developers to choose between at least once, at most once, or exactly once processing semantics.

  4. Language Support: Apache Flink supports multiple programming languages, including Java, Scala, and Python, making it versatile for developers with different language preferences. Apex primarily focuses on Java, providing a programming model that is tailored for Java developers.

  5. Integration with Ecosystem: Apache Flink integrates well with other Apache projects like Apache Kafka, Apache Hadoop, and Apache Cassandra, allowing for seamless data ingestion and processing workflows. While Apex also supports integration with various data sources and sinks, its ecosystem integration may not be as extensive as Apache Flink.

Summary: In summary, Apache Flink and Apex differ in their processing models, fault tolerance mechanisms, event processing guarantees, language support, and integration with ecosystems.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on Apache Flink, Apex

Nilesh
Nilesh

Technical Architect at Self Employed

Jul 8, 2020

Needs adviceonElasticsearchElasticsearchKafkaKafka

We have a Kafka topic having events of type A and type B. We need to perform an inner join on both type of events using some common field (primary-key). The joined events to be inserted in Elasticsearch.

In usual cases, type A and type B events (with same key) observed to be close upto 15 minutes. But in some cases they may be far from each other, lets say 6 hours. Sometimes event of either of the types never come.

In all cases, we should be able to find joined events instantly after they are joined and not-joined events within 15 minutes.

576k views576k
Comments

Detailed Comparison

Apache Flink
Apache Flink
Apex
Apex

Apache Flink is an open source system for fast and versatile data analytics in clusters. Flink supports batch and streaming analytics, in one system. Analytical programs can be written in concise and elegant APIs in Java and Scala.

Apex is a small tool for deploying and managing AWS Lambda functions. With shims for languages not yet supported by Lambda, you can use Golang out of the box.

Hybrid batch/streaming runtime that supports batch processing and data streaming programs.;Custom memory management to guarantee efficient, adaptive, and highly robust switching between in-memory and data processing out-of-core algorithms.;Flexible and expressive windowing semantics for data stream programs;Built-in program optimizer that chooses the proper runtime operations for each program;Custom type analysis and serialization stack for high performance
Supports languages Lambda does not natively support via shim, such as Go;Binary install (useful for continuous deployment in CI etc);Project level function and resource management;Configuration inheritance and overrides;Command-line function invocation with JSON streams;Transparently generates a zip for your deploy;Function rollback support;Tail function CloudWatchLogs;Concurrency for quick deploys;Dry-run to preview changes
Statistics
GitHub Stars
25.4K
GitHub Stars
33
GitHub Forks
13.7K
GitHub Forks
56
Stacks
534
Stacks
503
Followers
879
Followers
117
Votes
38
Votes
0
Pros & Cons
Pros
  • 16
    Unified batch and stream processing
  • 8
    Out-of-the box connector to kinesis,s3,hdfs
  • 8
    Easy to use streaming apis
  • 4
    Open Source
  • 2
    Low latency
No community feedback yet
Integrations
YARN Hadoop
YARN Hadoop
Hadoop
Hadoop
HBase
HBase
Kafka
Kafka
AWS Lambda
AWS Lambda
Golang
Golang

What are some alternatives to Apache Flink, Apex?

AWS Lambda

AWS Lambda

AWS Lambda is a compute service that runs your code in response to events and automatically manages the underlying compute resources for you. You can use AWS Lambda to extend other AWS services with custom logic, or create your own back-end services that operate at AWS scale, performance, and security.

Apache Spark

Apache Spark

Spark is a fast and general processing engine compatible with Hadoop data. It can run in Hadoop clusters through YARN or Spark's standalone mode, and it can process data in HDFS, HBase, Cassandra, Hive, and any Hadoop InputFormat. It is designed to perform both batch processing (similar to MapReduce) and new workloads like streaming, interactive queries, and machine learning.

Presto

Presto

Distributed SQL Query Engine for Big Data

Azure Functions

Azure Functions

Azure Functions is an event driven, compute-on-demand experience that extends the existing Azure application platform with capabilities to implement code triggered by events occurring in virtually any Azure or 3rd party service as well as on-premises systems.

Google Cloud Run

Google Cloud Run

A managed compute platform that enables you to run stateless containers that are invocable via HTTP requests. It's serverless by abstracting away all infrastructure management.

Amazon Athena

Amazon Athena

Amazon Athena is an interactive query service that makes it easy to analyze data in Amazon S3 using standard SQL. Athena is serverless, so there is no infrastructure to manage, and you pay only for the queries that you run.

lakeFS

lakeFS

It is an open-source data version control system for data lakes. It provides a “Git for data” platform enabling you to implement best practices from software engineering on your data lake, including branching and merging, CI/CD, and production-like dev/test environments.

Druid

Druid

Druid is a distributed, column-oriented, real-time analytics data store that is commonly used to power exploratory dashboards in multi-tenant environments. Druid excels as a data warehousing solution for fast aggregate queries on petabyte sized data sets. Druid supports a variety of flexible filters, exact calculations, approximate algorithms, and other useful calculations.

Serverless

Serverless

Build applications comprised of microservices that run in response to events, auto-scale for you, and only charge you when they run. This lowers the total cost of maintaining your apps, enabling you to build more logic, faster. The Framework uses new event-driven compute services, like AWS Lambda, Google CloudFunctions, and more.

Google Cloud Functions

Google Cloud Functions

Construct applications from bite-sized business logic billed to the nearest 100 milliseconds, only while your code is running

Related Comparisons

Bootstrap
Materialize

Bootstrap vs Materialize

Laravel
Django

Django vs Laravel vs Node.js

Bootstrap
Foundation

Bootstrap vs Foundation vs Material UI

Node.js
Spring Boot

Node.js vs Spring-Boot

Liquibase
Flyway

Flyway vs Liquibase