spark 与 mapreduce 对比

这篇具有很好参考价值的文章主要介绍了spark 与 mapreduce 对比。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Spark 为什么比 MapReduce 快总结

首先澄清几个误区:

        1)两者都是基于内存计算的,任何计算框架都肯定是基于内存的,所以说网上所说的 Spark 是基于内存计算所以快,显然是错误的。

        2)DAG 计算模型减少的是磁盘 1/0 次数(相比于 MapReduce 计算模型而言),而不是shuffle次数,因为 shuffle 是根据数据重组的数次而定,所以 shufle 次数不能减少。

所以总结 Spark 比MapReduce 快的原因有以下几点:

        1)DAG 相比Hadoop 的MapReduce 在大多数情况下可以减少磁盘1/0次数。因为 MapReduce 计算模型只能包含一个Map 和一个Reduce,所以 Reduce 完后必须进行落盘,而DAG 可以连续 shuffle 的,也就是说一个 DAG 可以完成好几个MapReduce,所以DAG 只需要在最后一次reduce 落盘,这就比mapreduce少了,总shuffle 次数越多,减少的落盘次数越多。

        2)Spark shuffle 的优化。MapReduce 在 Shuffle 时默认进行排序。Spark 在Shuffle 时则只有部分场景才需要排序 (bypass 机制不需要排序)。排序是非常耗时的,这样就可以加快 shuffle 速度。。

        3)Spark 支持将需要反复用到的数据进行缓存。所以对于下次再次使用此 RDD时,不用再次计算,而是直接从缓存中获取,因此可以减少数据加口载耗时,所以更适合需要迭代计算的机器学习算法。

        4)任务级别井行度上的不同。MapReduce 采用了多进程模型,而 Spark 采用了多线程模型。多进程模型的好处是便于细粒度控制每个任务占用的资源,但每次任务的启动都会消耗一定的启动时间,即MapReduce 的Map Task和Reduce Task是进程级别的,都是 jvm 进程,每次启动都需要重新申请资源,消耗了不必要的时间。而 Spark Task 则是基于线程模型的,通过复用线程池中的线程来减少启动关闭 task 所需要的开销。(多线程模型也有缺点,由于同节点上所有任务运行在一个进程中,因此,会出现严重的资源争用,难以细粒度控制每个任务占用资源)文章来源地址https://www.toymoban.com/news/detail-712977.html

到了这里,关于spark 与 mapreduce 对比的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 大数据面试题:Spark和MapReduce之间的区别?各自优缺点?

    面试题来源: 《大数据面试题 V4.0》 大数据面试题V3.0,523道题,679页,46w字 可回答: 1)spark和maprecude的对比;2)mapreduce与spark优劣好处 问过的一些公司:阿里云(2022.10),银联(2022.10),携程(2022.09),vivo(2022.09),滴滴(2022.09)(2020.09),网易云音乐(2022.09),快手(2022.08),字节(20

    2024年02月03日
    浏览(42)
  • 云计算与大数据之间的羁绊(期末不挂科版):云计算 | 大数据 | Hadoop | HDFS | MapReduce | Hive | Spark

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。 大数据是需求,云计算是手段。没有大数据,就不需要云计算;没有云计算,就无法处理大数据。 所有的计算能力、存储能力、和各种各样功能的应用都通过网络

    2024年02月04日
    浏览(59)
  • Spark_Spark比mapreduce快的原因

    最重要的3点, 数据缓存 : 中间结果可以缓存在内存中复用 资源管理 :executor task 管理,不同stage的task可以运行在同一个executor上 任务调度 :  dag 对比多阶段mr 1.任务模型的优化 ( DAG图对比多阶段的MR,启动申请资源耗时更少) mapreduce框架中,一个程序只能拥有一个map一个r

    2024年02月10日
    浏览(46)
  • 实时大数据流处理技术:Spark Streaming与Flink的深度对比

    引言 在当前的大数据时代,企业和组织越来越多地依赖于实时数据流处理技术来洞察和响应业务事件。实时数据流处理不仅能够加快数据分析的速度,还能提高决策的效率和准确性。Apache Spark Streaming和Apache Flink是目前两个主要的实时数据流处理框架,它们各自拥有独特的特

    2024年03月10日
    浏览(59)
  • 分布式计算MapReduce | Spark实验

    题目1 输入文件为学生成绩信息,包含了必修课与选修课成绩,格式如下: 班级1, 姓名1, 科目1, 必修, 成绩1 br (注: br 为换行符) 班级2, 姓名2, 科目1, 必修, 成绩2 br 班级1, 姓名1, 科目2, 选修, 成绩3 br ………., ………, ………, ………, ……… br 编写两个Hadoop平台上的MapRed

    2024年02月08日
    浏览(57)
  • spark为什么比mapreduce快?

    spark为什么比mapreduce快? 1:两者都是基于内存计算的,任何计算框架都肯定是基于内存的,所以网上说的spark是基于内存计算所以快,显然是错误的 2;DAG计算模型减少的是磁盘I/O次数(相比于mapreduce计算模型而言),而不是shuffle次数,因为shuffle是根据数据重组的次数而定,

    2024年02月21日
    浏览(37)
  • Spark内容分享(十二):Spark 和 MapReduce 的区别及优缺点

    1、Spark处理数据是基于内存的,而MapReduce是基于磁盘处理数据的 MapReduce是将中间结果保存到磁盘中,减少了内存占用,牺牲了计算性能。 Spark是将计算的中间结果保存到内存中,可以反复利用,提高了处理数据的性能。 2、Spark在处理数据时构建了DAG有向无环图,减少了shuf

    2024年01月23日
    浏览(48)
  • 大数据流处理与实时分析:Spark Streaming和Flink Stream SQL的对比与选择

    作者:禅与计算机程序设计艺术

    2024年02月07日
    浏览(41)
  • 关于Spark和MapReduce,一篇文带你看清楚

     Hadoop是目前应用最为广泛的分布式大数据处理框架,其具备可靠、高效、可伸缩等特点。  Hadoop的核心组件是HDFS、MapReduce。随着处理任务不同,各种组件相继出现,丰富Hadoop生态圈,目前生态圈结构大致如图所示:   根据服务对象和层次分为:数据来源层、数据传输层、数

    2024年03月17日
    浏览(40)
  • Hadoop/HDFS/MapReduce/Spark/HBase重要知识点整理

    本复习提纲主要参考北京大学计算机学院研究生课程《网络大数据管理与应用》课程资料以及厦门大学计算机科学系研究生课程 《大数据技术基础》相关材料整理而成,供广大网友学习参考,如有版权问题请联系作者删除:guanmeige001@pku.edu.cn Hadoop简介 Hadoop的功能和作用: 高

    2024年02月02日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包