No more typing reviews! Try our Samantha, our new voice AI agent.

Apache Flink vs Apache Spark Streaming comparison

Why PeerSpot?
 

Comparison Buyer's Guide

Executive SummaryUpdated on Dec 17, 2024

Review summaries and opinions

We asked business professionals to review the solutions they use. Here are some excerpts of what they said:
 

Categories and Ranking

Apache Flink
Ranking in Streaming Analytics
4th
Average Rating
7.8
Reviews Sentiment
6.7
Number of Reviews
19
Ranking in other categories
No ranking in other categories
Apache Spark Streaming
Ranking in Streaming Analytics
8th
Average Rating
7.8
Reviews Sentiment
6.4
Number of Reviews
17
Ranking in other categories
No ranking in other categories
 

Mindshare comparison

As of September 2026, in the Streaming Analytics category, the mindshare of Apache Flink is 7.0%, down from 14.4% compared to the previous year. The mindshare of Apache Spark Streaming is 4.6%, up from 3.6% compared to the previous year. It is calculated based on PeerSpot user engagement data.
Streaming Analytics Mindshare Distribution
ProductMindshare (%)
Apache Flink7.0%
Apache Spark Streaming4.6%
Other88.4%
Streaming Analytics
 

Featured Reviews

Sanjay Srivastava - PeerSpot reviewer
Software Architect at IBM
Streaming workflows have improved data integration and support real-time pipelines across platforms
We are not using Apache Flink in its advanced window capabilities. We are using the Apache Flink job in Apache SeaTunnel, meaning we can write the code inside Apache SeaTunnel. Currently, we are moving; both solutions are there. We are doing it on-premises with the help of Kubernetes and OpenShift. The main reason why Apache Flink is better is that it has more functions, and being open source with easy code in Apache SeaTunnel helps us achieve that. Cost is a major issue. I would rate the stability of the product as an eight. For Apache Flink, the final point can be rated an eight. I can recommend Apache Flink to other users for streaming support, and I am recommending it. I would rate this review an eight overall.
Khoa Dang Le - PeerSpot reviewer
Principal AI Engineer at IMT Solutions
Have faced challenges with complex data handling and seek smoother integration for machine learning workflows
I find the fault tolerance feature beneficial because I use it for serving data from a landing area. I understand all of the structures we have for Spark SQL, Spark Streaming, and MLlib. The ability of Apache Spark Streaming to handle out-of-order data using watermarking and windowing is something we use in our pipeline. Nearly 50% of our usage is based on that because we use it for landing data, and we appreciate that we can work with it. The main benefits of Apache Spark Streaming include cost savings, time savings, and efficiency improvements about data storage. The fast storage capability is crucial because Apache Spark replaces Hadoop's MapReduce, allowing us to manage our data more efficiently.

Quotes from Members

We asked business professionals to review the solutions they use. Here are some excerpts of what they said:
 

Pros

"We value this solution's intricate system because it comes with a state inside the mechanism and product, allowing us to process batch data, stream to real-time and build pipelines, and we do not need to process data from the beginning when we pause as we can continue from the same point where we stopped, helping us save time as 95% of our pipelines will now be on Amazon and we'll save money by saving time."
"Flink moved on to becoming a standard technology for location platform."
"Apache Flink provides faster and low-cost investment for me; I find it to have low hardware requirements, and it's faster with low code, meaning it's easy to understand for moving the streaming data."
"The setup was not too difficult."
"The top feature of Apache Flink is its low latency for fast, real-time data. Another great feature is the real-time indicators and alerts which make a big difference when it comes to data processing and analysis."
"The documentation is very good."
"The product helps us to create both simple and complex data processing tasks. Over time, it has facilitated integration and navigation across multiple data sources tailored to each client's needs. We use Apache Flink to control our clients' installations."
"It is user-friendly and the reporting is good."
"The platform’s most valuable feature for processing real-time data is its ability to handle continuous data streams."
"Apache Spark Streaming has features like checkpointing and Streaming API that are useful."
"For Apache Spark Streaming, the feature I appreciated most is that it provides live data delivery; additionally, it provides the capability to send a larger amount of data in parallel."
"Spark Streaming is critical, quite stable, full-featured, and scalable."
"The solution is very stable and reliable."
"The main benefits of Apache Spark Streaming include cost savings, time savings, and efficiency improvements about data storage."
"With Apache Spark Streaming's integration with Anaconda and Miniconda with Python, I interact with databases using data frames or data sets in micro versions and create solutions based on business expectations for decision-making, logistic regression, linear regression, or machine learning which provides image or voice record and graphical data for improved accuracy."
"Apache Spark Streaming's most valuable feature is near real-time analytics. The developers can build APIs easily for a code-steaming pipeline. The solutions have an ecosystem of integration with other stock services."
 

Cons

"In a future release, they could improve on making the error descriptions more clear."
"Apache Flink's documentation should be available in more languages."
"Apache Flink should improve its data capability and data migration."
"Flink has become a lot more stable but the machine learning library is still not very flexible."
"The TimeWindow feature is a bit tricky. The timing of the content and the windowing is a bit changed in 1.11. They have introduced watermarks. A watermark is basically associating every data with a timestamp. The timestamp could be anything, and we can provide the timestamp. So, whenever I receive a tweet, I can actually assign a timestamp, like what time did I get that tweet. The watermark helps us to uniquely identify the data. Watermarks are tricky if you use multiple events in the pipeline. For example, you have three resources from different locations, and you want to combine all those inputs and also perform some kind of logic. When you have more than one input screen and you want to collect all the information together, you have to apply TimeWindow all. That means that all the events from the upstream or from the up sources should be in that TimeWindow, and they were coming back. Internally, it is a batch of events that may be getting collected every five minutes or whatever timing is given. Sometimes, the use case for TimeWindow is a bit tricky. It depends on the application as well as on how people have given this TimeWindow. This kind of documentation is not updated. Even the test case documentation is a bit wrong. It doesn't work. Flink has updated the version of Apache Flink, but they have not updated the testing documentation. Therefore, I have to manually understand it. We have also been exploring failure handling. I was looking into changelogs for which they have posted the future plans and what are they going to deliver. We have two concerns regarding this, which have been noted down. I hope in the future that they will provide this functionality. Integration of Apache Flink with other metric services or failure handling data tools needs some kind of update or its in-depth knowledge is required in the documentation. We have a use case where we want to actually analyze or get analytics about how much data we process and how many failures we have. For that, we need to use Tomcat, which is an analytics tool for implementing counters. We can manage reports in the analyzer. This kind of integration is pretty much straightforward. They say that people must be well familiar with all the things before using this type of integration. They have given this complete file, which you can update, but it took some time. There is a learning curve with it, which consumed a lot of time. It is evolving to a newer version, but the documentation is not demonstrating that update. The documentation is not well incorporated. Hopefully, these things will get resolved now that they are implementing it. Failure is another area where it is a bit rigid or not that flexible. We never use this for scaling because complexity is very high in case of a failure. Processing and providing the scaled data back to Apache Flink is a bit challenging. They have this concept of offsetting, which could be simplified."
"There is a learning curve. It takes time to learn."
"In terms of stability with Flink, it is something that you have to deal with every time. Stability is the number one problem that we have seen with Flink, and it really depends on the kind of problem that you're trying to solve."
"Amazon's CloudFormation templates don't allow for direct deployment in the private subnet."
"One improvement I would expect is real-time processing instead of micro-batch or near real-time."
"The cost and load-related optimizations are areas where the tool lacks and needs improvement."
"The problem is we need to use it in a certain manner. After that, we need to apply another pipeline for the machine learning processes, and that's what we work on."
"The service structure of Apache Spark Streaming can improve. There are a lot of issues with memory management and latency. There is no real-time analytics. We recommend it for the use cases where there is a five-second latency, but not for a millisecond, an IOT-based, or the detection anomaly-based. Flink as a service is much better."
"We don't have enough experience to be judgmental about its flaws."
"When dealing with various data types including COBOL, Excel, JSON, video, audio, and MPG files, challenges can arise with incomplete or missing values."
"There could be an improvement in the area of the user configuration section, it should be less developer-focused and more business user-focused."
"We would like to have the ability to do arbitrary stateful functions in Python."
 

Pricing and Cost Advice

"It's an open-source solution."
"Apache Flink is open source so we pay no licensing for the use of the software."
"This is an open-source platform that can be used free of charge."
"It's an open source."
"The solution is open-source, which is free."
"On a scale from one to ten, where one is expensive, or not cost-effective, and ten is cheap, I rate the price a seven."
"I was using the open-source community version, which was self-hosted."
"Spark is an affordable solution, especially considering its open-source nature."
"People pay for Apache Spark Streaming as a service."
report
Use our free recommendation engine to learn which Streaming Analytics solutions are best for your needs.
913,683 professionals have used our research since 2012.
 

Top Industries

By visitors reading reviews
Financial Services Firm
17%
Retailer
14%
Computer Software Company
8%
Manufacturing Company
5%
Financial Services Firm
15%
Outsourcing Company
13%
Comms Service Provider
9%
Healthcare Company
6%
 

Company Size

By reviewers
Large Enterprise
Midsize Enterprise
Small Business
By reviewers
Company SizeCount
Small Business5
Midsize Enterprise3
Large Enterprise12
By reviewers
Company SizeCount
Small Business9
Midsize Enterprise2
Large Enterprise7
 

Questions from the Community

What needs improvement with Apache Flink?
Apache could improve Apache Flink by providing more functionality, as they need to fully support data integration. The connectors are still very few for Apache Flink. There is a lack of functionali...
What is your primary use case for Apache Flink?
I am working with Apache Flink, which is the tool we use for data integration. Apache Flink is for data, and we are working on the data integration project, not big data, using Apache Flink and Apa...
What advice do you have for others considering Apache Flink?
We are not using Apache Flink in its advanced window capabilities. We are using the Apache Flink job in Apache SeaTunnel, meaning we can write the code inside Apache SeaTunnel. Currently, we are mo...
What needs improvement with Apache Spark Streaming?
One of the improvements we need is in Spark SQL and the machine learning library. I don't think there is too much to work on, but the issue is when we want to use machine learning, we always need t...
What is your primary use case for Apache Spark Streaming?
We work with Apache Spark Streaming for our project because we use that as one of the landing data sources, and we work with it to ensure we can get all of the data before it goes through our data ...
What advice do you have for others considering Apache Spark Streaming?
One thing I would share with other organizations considering Apache Spark Streaming is the necessity of having effective data storage. We want to ensure we acquire and manage our data storage effec...
 

Also Known As

Flink
Spark Streaming
 

Overview

 

Sample Customers

LogRhythm, Inc., Inter-American Development Bank, Scientific Technologies Corporation, LotLinx, Inc., Benevity, Inc.
UC Berkeley AMPLab, Amazon, Alibaba Taobao, Kenshoo, eBay Inc.
Find out what your peers are saying about Apache Flink vs. Apache Spark Streaming and other solutions. Updated: September 2026.
913,683 professionals have used our research since 2012.