Most Helpful Review
Provides truly real-time data streaming with better control over resources; ML library could be more flexible
We asked business professionals to review the solutions they use. Here are some excerpts of what they said:
"Everything is hosted and simple."
"Amazon Kinesis also provides us with plenty of flexibility."
"Amazon Kinesis has improved our ROI."
"Its scalability is very high. There is no maintenance and there is no throughput latency. I think data scalability is high, too. You can ingest gigabytes of data within seconds or milliseconds."
"The most valuable feature is that it has a pretty robust way of capturing things."
"Kinesis is a fully managed program streaming application. You can manage any infrastructure. It is also scalable. Kinesis can handle any amount of data streaming and process data from hundreds, thousands of processes in every source with very low latency."
"Great auto-scaling, auto-sharing, and auto-correction features."
"The feature that I've found most valuable is the replay. That is one of the most valuable in our business. We are business-to-business so replay was an important feature - being able to replay for 24 hours. That's an important feature."
"The documentation is very good."
"With Flink, it provides out-of-the-box checkpointing and state management. It helps us in that way. When Storm used to restart, sometimes we would lose messages. With Flink, it provides guaranteed message processing, which helped us. It also helped us with maintenance or restarts."
"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."
"Another feature is how Flink handles its radiuses. It has something called the checkpointing concept. You're dealing with billions and billions of requests, so your system is going to fail in large storage systems. Flink handles this by using the concept of checkpointing and savepointing, where they write the aggregated state into some separate storage. So in case of failure, you can basically recall from that state and come back."
"Apache Flink is meant for low latency applications. You take one event opposite if you want to maintain a certain state. When another event comes and you want to associate those events together, in-memory state management was a key feature for us."
"This is truly a real-time solution."
"Could include features that make it easier to scale."
"I think the default settings are far too low."
"Something else to mention is that we use Kinesis with Lambda a lot and the fact that you can only connect one Stream to one Lambda, I find is a limiting factor. I would definitely recommend to remove that constraint."
"Kinesis Data Analytics needs to be improved somewhat. It's SQL based data but it is not as user friendly as MySQL or Athena tools."
"If there were better documentation on optimal sharding strategies then it would be helpful."
"Kinesis is good for Amazon Cloud but not as suitable for other cloud vendors."
"Lacks first in, first out queuing."
"In general, the pain point for us was that once the data gets into Kinesis there is no way for us to understand what's happening because Kinesis divides everything into shards. So if we wanted to understand what's happening with a particular shard, whether it is published or not, we could not. Even with the logs, if we want to have some kind of logging it is in the shard."
"We have a machine learning team that works with Python, but Apache Flink does not have full support for the language."
"The state maintains checkpoints and they use RocksDB or S3. They are good but sometimes the performance is affected when you use RocksDB for checkpointing."
"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."
"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."
"In terms of improvement, there should be better reporting. You can integrate with reporting solutions but Flink doesn't offer it themselves."
"The machine learning library is not very flexible."
Pricing and Cost Advice
"Under $1,000 per month."
"This is an open-source platform that can be used free of charge."
out of 31 in Streaming Analytics
Average Words per Review
out of 31 in Streaming Analytics
Average Words per Review
Compared 31% of the time.
Compared 23% of the time.
Compared 11% of the time.
Compared 3% of the time.
Compared 3% of the time.
Compared 21% of the time.
Compared 20% of the time.
Compared 13% of the time.
Compared 8% of the time.
Compared 4% of the time.
Also Known As
|Amazon AWS Kinesis, AWS Kinesis, Kinesis||Flink|
Amazon Kinesis makes it easy to collect, process, and analyze real-time, streaming data so you can get timely insights and react quickly to new information. Amazon Kinesis offers key capabilities to cost-effectively process streaming data at any scale, along with the flexibility to choose the tools that best suit the requirements of your application. With Amazon Kinesis, you can ingest real-time data such as video, audio, application logs, website clickstreams, and IoT telemetry data for machine learning, analytics, and other applications. Amazon Kinesis enables you to process and analyze data as it arrives and respond instantly instead of having to wait until all your data is collected before the processing can begin.
Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. Flink has been designed to run in all common cluster environments, perform computations at in-memory speed and at any scale.
Learn more about Amazon Kinesis
Learn more about Apache Flink
|Zillow, Netflix, Sonos||LogRhythm, Inc., Inter-American Development Bank, Scientific Technologies Corporation, LotLinx, Inc., Benevity, Inc.|
Computer Software Company27%
Comms Service Provider13%
Financial Services Firm6%
Computer Software Company32%
Comms Service Provider17%
Financial Services Firm7%
No Data Available
Amazon Kinesis is ranked 3rd in Streaming Analytics with 9 reviews while Apache Flink is ranked 4th in Streaming Analytics with 6 reviews. Amazon Kinesis is rated 8.4, while Apache Flink is rated 7.6. The top reviewer of Amazon Kinesis writes "Easily replay your streaming data with this reliable solution". On the other hand, the top reviewer of Apache Flink writes "Scalable framework for stateful streaming aggregations". Amazon Kinesis is most compared with Apache Spark Streaming, Amazon MSK, Google Cloud Dataflow, Spring Cloud Data Flow and IBM Streams, whereas Apache Flink is most compared with Google Cloud Dataflow, Spring Cloud Data Flow, Azure Stream Analytics, Databricks and IBM Streams. See our Amazon Kinesis vs. Apache Flink report.
See our list of best Streaming Analytics vendors.
We monitor all Streaming Analytics reviews to prevent fraudulent reviews and keep review quality high. We do not post reviews by company employees or direct competitors. We validate each review for authenticity via cross-reference with LinkedIn, and personal follow-up with the reviewer when necessary.