美文网首页大数据
Hadoop、Spark、Flink三大框架对比

Hadoop、Spark、Flink三大框架对比

作者: 麦芽maiya | 来源:发表于2020-12-16 19:25 被阅读0次

    目前来说,大数据领域最为活跃的三个计算框架,当属Hadoop、Spark以及Flink这三者。三个框架在不同的大数据处理场景当中,表现各有优势,因此也常常被拿来做比较。今天我们也来做个Hadoop对比,看看Hadoop、Spark、Flink三大框架,各自的优势劣势如何。

    1、数据处理对比

    Hadoop专为批处理而生,一次将大量数据集输入到输入中,进行处理并产生结果。

    Spark:定义是一个批处理系统,但也支持流处理。

    Flink:为流和批处理提供了一个运行时。

    2、流引擎对比

    Hadoop:Hadoop默认的MapReduce,仅面向于批处理。

    Spark:Spark Streaming以微批处理数据流,实现准实时的批处理和流处理。

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

    3、数据流对比

    Hadoop:MapReduce计算数据流没有任何循环,每个阶段使用上一阶段的输出,并为下一阶段产生输入。

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

    Flink:Flink在运行时支持受控循环依赖图,支持机器学习算法非常有效。

    4、计算模型对比

    Hadoop:MapReduce采用了面向批处理的模型,批处理静态数据。

    Spark:Spark采用了微批处理。微批处理本质上是一种“先收集再处理”的计算模型。

    Flink:Flink采用连续流式流传输模型,实时对数据进行处理,而不会在收集数据或处理数据时出现任何延迟。

    5、性能对比

    Hadoop:Hadoop仅支持批处理,不支持处理流数据,与Spark和Flink相比,性能会降低。

    Spark:支持微批处理,但流处理效率不如Apache Flink。

    Flink: Flink使用本机闭环迭代运算符,尤其在支持机器学习和图形处理方面,表现优异。

    6、内存管理对比

    Hadoop:提供可配置的内存管理,可以动态或静态地执行此操作。

    Spark:提供可配置的内存管理,从Spark 1.6开始已朝着自动进行内存管理的方向发展。

    Flink:有自己的内存管理系统,提供自动内存管理

    相关文章

      网友评论

        本文标题:Hadoop、Spark、Flink三大框架对比

        本文链接:https://www.haomeiwen.com/subject/lfeogktx.html