Try our new research platform with insights from 80,000+ expert users

Apache Flink vs Apache Kafka comparison

 

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
6th
Average Rating
7.8
Reviews Sentiment
7.0
Number of Reviews
17
Ranking in other categories
No ranking in other categories
Apache Kafka
Ranking in Streaming Analytics
8th
Average Rating
8.2
Reviews Sentiment
6.9
Number of Reviews
87
Ranking in other categories
No ranking in other categories
 

Mindshare comparison

As of May 2025, in the Streaming Analytics category, the mindshare of Apache Flink is 13.8%, up from 9.6% compared to the previous year. The mindshare of Apache Kafka is 2.8%, up from 1.9% compared to the previous year. It is calculated based on PeerSpot user engagement data.
Streaming Analytics
 

Featured Reviews

Ilya Afanasyev - PeerSpot reviewer
A great solution with an intricate system and allows for batch data processing
We value this solution's intricate system because it comes with a state inside the mechanism and product. The system allows us to process batch data, stream to real-time and build pipelines. Additionally, we do not need to process data from the beginning when we pause, and we can continue from the same point where we stopped. It helps us save time as 95% of our pipelines will now be on Amazon, and we'll save money by saving time.
Snehasish Das - PeerSpot reviewer
Data streaming transforms real-time data movement with impressive scalability
I worked with Apache Kafka for customers in the financial industry and OTT platforms. They use Kafka particularly for data streaming. Companies offering movie and entertainment as a service, similar to Netflix, use Kafka Apache Kafka offers unique data streaming. It allows the use of data in…

Quotes from Members

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

Pros

"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 event processing function is the most useful or the most used function. The filter function and the mapping function are also very useful because we have a lot of data to transform. For example, we store a lot of information about a person, and when we want to retrieve this person's details, we need all the details. In the map function, we can actually map all persons based on their age group. That's why the mapping function is very useful. We can really get a lot of events, and then we keep on doing what we need to do."
"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."
"Allows us to process batch data, stream to real-time and build pipelines."
"It is user-friendly and the reporting is good."
"Apache Flink offers a range of powerful configurations and experiences for development teams. Its strength lies in its development experience and capabilities."
"Apache Flink's best feature is its data streaming tool."
"It is easy to configure."
"Kafka makes data streaming asynchronous and decouples the reliance of events on consumers."
"With Kafka, events and streaming are persistent, and multiple subscribers can consume the data. This is an advantage of Kafka compared to simple queue-based solutions."
"valuable features relate to microservices architecture and working on KStream and KSQL DB as a microservices event bus."
"Apache Kafka is very fast and stable."
"It is a stable solution...A lot of my experience indicates that Apache Kafka is scalable."
"I like the performance and reliability of Kafka. I needed a data streaming buffer that could handle thousands of messages per second with at least one processing point for an analytics pipeline. Kafka fits this requirement very well."
"The most valuable feature is the performance."
 

Cons

"There is room for improvement in the initial setup process."
"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."
"The solution could be more user-friendly."
"PyFlink is not as fully featured as Python itself, so there are some limitations to what you can do with it."
"Apache Flink's documentation should be available in more languages."
"Apache Flink should improve its data capability and data migration."
"The machine learning library is not very flexible."
"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."
"Apache Kafka has performance issues that cause it to lag."
"Apache Kafka can improve by providing a UI for monitoring. There are third-party tools that can do it, but it would be nice if it was already embedded within Apache Kafka."
"I would like them to reduce the learning curve around the creation of brokers and topics. They also need to improve on the concept of the partitions."
"The price for the enterprise version is quite high. It would be better to have a lower price."
"The UI is based on command line. It would be helpful if they could come up with a simpler user interface."
"Managing Apache Kafka can be a challenge, but there are solutions. I used the newest release, as it seems they have removed Zookeeper, which should make it easier. Confluent provides a fully managed Kafka platform, in which the cluster does not need to be managed."
"Config management can be better. We are always trying to find the best configs, which is a challenge."
"Apache Kafka could improve data loss and compatibility with Spark."
 

Pricing and Cost Advice

"It's an open source."
"This is an open-source platform that can be used free of charge."
"The solution is open-source, which is free."
"It's an open-source solution."
"Apache Flink is open source so we pay no licensing for the use of the software."
"Apache Kafka is an open-sourced solution. There are fees if you want the support, and I would recommend it for enterprises. There are annual subscriptions available."
"It is approximately $600,000 USD."
"We use the free version."
"The solution is open source; it's free to use."
"Apache Kafka is open-source and can be used free of charge."
"Kafka is open-source and it is cheaper than any other product."
"Licensing issues are not applicable. Apache licensing makes it simple with almost zero cost for the software itself."
"The solution is open source."
report
Use our free recommendation engine to learn which Streaming Analytics solutions are best for your needs.
850,028 professionals have used our research since 2012.
 

Top Industries

By visitors reading reviews
Financial Services Firm
24%
Computer Software Company
15%
Manufacturing Company
7%
Retailer
5%
Financial Services Firm
31%
Computer Software Company
12%
Manufacturing Company
7%
Retailer
6%
 

Company Size

By reviewers
Large Enterprise
Midsize Enterprise
Small Business
 

Questions from the Community

What do you like most about Apache Flink?
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. ...
What is your experience regarding pricing and costs for Apache Flink?
The solution is expensive. I rate the product’s pricing a nine out of ten, where one is cheap and ten is expensive.
What needs improvement with Apache Flink?
There are more libraries that are missing and also maybe more capabilities for machine learning. It could have a friendly user interface for pipeline configuration, deployment, and monitoring.
What are the differences between Apache Kafka and IBM MQ?
Apache Kafka is open source and can be used for free. It has very good log management and has a way to store the data used for analytics. Apache Kafka is very good if you have a high number of user...
What do you like most about Apache Kafka?
Apache Kafka is an open-source solution that can be used for messaging or event processing.
What is your experience regarding pricing and costs for Apache Kafka?
Its pricing is reasonable. It's not always about cost, but about meeting specific needs.
 

Comparisons

 

Also Known As

Flink
No data available
 

Overview

 

Sample Customers

LogRhythm, Inc., Inter-American Development Bank, Scientific Technologies Corporation, LotLinx, Inc., Benevity, Inc.
Uber, Netflix, Activision, Spotify, Slack, Pinterest
Find out what your peers are saying about Apache Flink vs. Apache Kafka and other solutions. Updated: April 2025.
850,028 professionals have used our research since 2012.