如何选择Apache Spark和Apache Flink?

Posted 过往记忆大数据

tags:

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

03-30 iteblog 



可访问Google的Hosts文件

:




  Spark Streaming和Flink都能提供恰好一次的保证,即每条记录都仅处理一次。与其他处理系统(比如Storm)相比,它们都能提供一个非常高的吞吐量。它们的容错开销也都非常低。之前,Spark提供了可配置的内存管理,而Flink提供了自动内存管理,但从1.6版本开始,Spark也提供了自动内存管理。这两个流处理引擎确实有许多相似之处,但它们也有着巨大的差异。近日,产品经理Balaji Mohanam在公司内部的白板演示中了和的不同之处,用户可以参考这种比较做出选择。

为了方便说明,Mohanam首先对批处理、微批处理和连续流操作符等三种计算模式进行了解释。批处理基本上处理静态数据,一次读入大量数据进行处理并生成输出。微批处理结合了批处理和连续流操作符,将输入分成多个微批次进行处理。从根本上讲,微批处理是一个“收集然后处理”的计算模型。连续流操作符则在数据到达时进行处理,没有任何数据收集或处理延迟。

Apache Spark和Apache Flink的主要差别就在于计算模型不同。Spark采用了微批处理模型,而Flink采用了基于操作符的连续流模型。因此,对Apache Spark和Apache Flink的选择实际上变成了计算模型的选择,而这种选择需要在延迟、吞吐量和可靠性等多个方面进行权衡。


本文 出处:http://www.infoq.com/cn/news/2016/03/Apache-Spark-Apache-Flink-choose



猜你喜欢
1、
2、
3、
4、
5、



以上是关于如何选择Apache Spark和Apache Flink?的主要内容,如果未能解决你的问题,请参考以下文章

Apache Spark 是直接从 RDBMS 处理数据的正确选择吗?

Apache Spark 选择所有行

forEach Spark Scala 中的错误:值选择不是 org.apache.spark.sql.Row 的成员

spark与flume整合

《Apache Spark源码剖析》学习笔记之Spark作业提交

如何在 Apache Spark 中添加 Hive 支持? [复制]