前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >大数据计算引擎对比:Hadoop vs Spark vs Flink

大数据计算引擎对比:Hadoop vs Spark vs Flink

作者头像
成都加米谷大数据
修改2021-06-15 18:02:17
2.1K0
修改2021-06-15 18:02:17
举报
文章被收录于专栏:大数据开发大数据开发

Hadoop学习可以说是大数据学习当中的重难点,很多同学都在Hadoop的学习当中存在各种各样的疑问。很多同学都问过这样一个问题,针对于大数据处理,有Hadoop、Spark、Flink等,这三者有何不同,下面就为大家分享Hadoop、Spark和Flink之间的比较。

总体来说,Hadoop,Spark和Flink在数据处理上各有其优势。Hadoop对大批量数据的处理很有一套,但是由于是离线离线,所以输出结果会产生延迟;Spark作为后来者,针对Hadoop离线处理产生数据延迟这一点进行补充,开始了基于内存计算的实时处理;而Flink,则是在数据的流处理和批处理上进一步进行补足。

Hadoop权威指南
Hadoop权威指南

Hadoop vs Spark vs Flink–流引擎

Hadoop完成数据处理任务,主要通过MapReduce,MapReduce的核心原理是批处理,将大量数据集进行并行处理,并产生结果。

Spark当中,Spark Streaming则是以微批处理数据流,每个批次包含在该批次期间到达的事件的集合,但是在较大规模的数据处理上就会显得吃力。

Flink可以说是真正的流引擎,它使用流来处理工作负载:流,SQL,微批处理和批处理。

Hadoop vs Spark vs Flink–数据流

Hadoop的MapReduce,在进行数据计算时,是一个承前启后的阶段链,使用上一阶段的输出向前发展,并为下一阶段产生输入。

Spark,尽管机器学习算法是循环数据流,但Spark将其表示为(DAG)直接非循环图或有向无环图。

Flink作为流引擎,在运行时支持受控循环依赖图,所以在后续的机器学习算法上还有更大的空间。

Hadoop vs Spark vs Flink–计算模型

Hadoop的MapReduce,计算模型遵从批处理原则,对于静态数据进行批量处理,一次性输入,一次性输出。

Spark则采用的是微批处理,先收集再处理,所以其实算不上真正意义上的没有延迟,只是相对于MapReduce,减少了大部分的延迟时间。

Flink采用连续流式流传输模型,实时对数据进行处理,而不会在收集数据或处理数据时出现任何延迟,可以说是实现了真正意义上的实时在线处理数据。

以上就是今天关于Hadoop,Spark和Flink之间的比较分享。看完我们会发现,在大数据处理当中,这些计算框架各自有擅长的地方,也各有不足之处,结合起来使用才能真正实现对大数据处理需求的更好满足。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
大数据处理套件 TBDS
腾讯大数据处理套件(Tencent Big Data Suite,TBDS)依托腾讯多年海量数据处理经验,基于云原生技术和泛 Hadoop 生态开源技术提供的可靠、安全、易用的大数据处理平台。 TBDS可在公有云、私有云、非云化环境,根据不同数据处理需求组合合适的存算分析组件,包括 Hive、Spark、HBase、Flink、Presto、Iceberg、Elasticsearch、StarRocks 等,以快速构建企业级数据湖仓。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档