Flink and Spark both are real time data processing platforms and top level Apache projects. Both have components for SQL queries, graph processing, machine learning, and stream processing. Both the frameworks can run in standalone mode and also on top of Hadoop, using Yarn and HDFS. Besides these similarities Flink and Spark have some key differences too in terms of data processing and iterations.
In this paper, we compare the effectiveness of Flink and Spark under various scenarios and the various ways to improve performance in Spark.