Flink 与 Spark 简要对比

Posted 中兴大数据

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flink 与 Spark 简要对比相关的知识,希望对你有一定的参考价值。

文 | 籍增豹

Apache Flink 这两年逐渐火了起来,那么 Flink 和现在流行的 Spark 到底有什么异同呢,本文为你简要对比一下。

Flink 是一个面向分布式数据流处理和批量数据处理的开源计算平台。和 Spark 类似,两者都希望提供一个统一功能的计算平台给用户,都在尝试建立一个统一的平台以运行批量,流式,交互式,图处理,机器学习等应用。

虽然目标非常类似,但是 Flink 在实现上和 Spark 存在着很大的区别,Flink 从另一个视角看待流处理和批处理,将二者统一起来:Flink 是完全支持流处理,也就是说作为流处理看待时输入数据流是无界的;批处理被作为一种特殊的流处理,只是它的输入数据流被定义为有界的。

下面从框架、SQL 支持、性能等几方面来对比两者的区别:

框架

Flink 和 Spark 都是基于内存计算、支持实时/批处理等多种计算模式的统一框架,但Flink 的设计理念是 Stream as Platform,而 Spark 的设计理念是 Batch as Platform。

流计算

Spark 基于小批量处理,把 Streaming 看成是更快的批处理,支持秒级计算,在流计算方面延时较大。而 Flink 基于每个事件处理,是真正的流式计算,跟 Storm 的性能差不多,支持毫秒级计算。

SQL支持

Spark 提供 SparkSQL,Flink 通过 Table API 提供 SQL 交互支持。两者相比,Spark 对 SQL 支持更好,而且 Spark 支持对 SQL 的优化和扩展等,相关社区非常活跃。而 Flink 在 SQL 支持方面还有很大提升空间。

性能

在大家都关心的计算性能方面,两者都有较好的表现,但 Flink 支持增量迭代等特性,因此 Flink 具有更好的性能表现。

社区活跃度

Spark 社区非常活跃,生态系统越来越完善。而 Flink 社区活跃度相对较低,但相信随着 Flink 应用越来越广泛,这一现象会得到改变。

 

大数据时代的思考和洞察

长按二维码关注

以上是关于Flink 与 Spark 简要对比的主要内容,如果未能解决你的问题,请参考以下文章

低调对比Spark Streaming与Flink

Spark与Flink:对比与分析

揭秘Apache顶级项目大数据分析引擎 Flink:与Spark的对比与分析

Storm,Spark,Flink对比

实时计算框架Flink,Spark Streaming,Storm对比

flink和spark对比