Spark_Spark比mapreduce快的原因

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

Spark 为什么比 mapreduce 快?

最重要的3点,

数据缓存 : 中间结果可以缓存在内存中复用

资源管理 :executor task 管理,不同stage的task可以运行在同一个executor上

任务调度 :  dag 对比多阶段mr

1.任务模型的优化DAG图对比多阶段的MR,启动申请资源耗时更少)

  • mapreduce框架中,一个程序只能拥有一个map一个reduce的过程,如果运算逻辑很复杂,一个map+一个reduce是表述不出来的,可能就需要多个map-reduce的过程;mapreduce框架想要做到这个事情,就需要把第一个map-reduce过程产生的结果,写入HDFS,然后由第二个map-reduce过程去hdfs读取后计算,完成后又将结果写入HDFS,再交由第三个map-reduce过程去计算! 重点!!!–这样一来,一个复杂的运算,在mapreduce框架中可能就会发生很多次写入并读取HDFS的操作,而读写HDFS是很慢的事情
  • spark框架,采用的是以rdd为核心,dag为调度,把上面的mapreduce-mapreduce-mapreduce的过程,连续执行,不需要反复落地到HDFS,这样就会比mapreduce快很多啦

2.Spark支持在内存中缓存结果(基于RDD, RDD分布式弹性数据集, rdd.cache(),数据可复用)
比如一个复杂逻辑中 ,一个map-reduce产生的结果A,如果在后续的map-reduce过程中需要反复用到,spark可以把A缓存到内存中,这样后续的map-reduce过程就只需要从内存中读取A即可,也会加快速度

3.资源模型不同 (spark拥有更完善的资源管理方案,task可以复用core)
spark是多线程模型,每个worker节点运行一个或多个executor服务,每个task作为线程运行在executor中,task间可共享资源,
而MR是多进程模型,任务调度(频繁申请、释放资源)和启动开销大,不适合低延迟类型作业文章来源地址https://www.toymoban.com/news/detail-686878.html

Spark 对比 mapreduce的优势有哪些

  • 计算模型优势,spark的核心技术是弹性分布式数据集(Resilient Distributed Datasets),提供了比 MapReduce 丰富的模型,可以快速在内存中对数据集 进行多次迭代,来支持复杂的数据挖掘算法和图形计算算法。。
  • Spark 和 Hadoop 的根本差异是多个作业之间的数据通信问题 : Spark 多个作业之间数据 通信是基于内存,而 Hadoop 是基于磁盘。
  • Spark Task的启动时间快。Spark采用fork线程的方式,而Hadoop采用创建新的进程 的方式。
  • Spark只有在shuffle的时候将数据写入磁盘,而Hadoop中多个MR作业之间的数据交 互都要依赖于磁盘交互
  • Spark的缓存机制比HDFS的缓存机制高效。

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

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

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

相关文章

  • 云计算与大数据之间的羁绊(期末不挂科版):云计算 | 大数据 | Hadoop | HDFS | MapReduce | Hive | Spark

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

    2024年02月04日
    浏览(59)
  • spark 与 mapreduce 对比

    Spark 为什么比 MapReduce 快总结 首先澄清几个误区:         1)两者都是基于内存计算的,任何计算框架都肯定是基于内存的,所以说网上所说的 Spark 是基于内存计算所以快,显然是错误的。         2)DAG 计算模型减少的是磁盘 1/0 次数(相比于 MapReduce 计算模型而言

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

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

    2024年01月23日
    浏览(48)
  • spark和Mapreduce的对比

    MapReduce:MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念\\\"Map(映射)\\\"和\\\"Reduce(归约)\\\",是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程

    2024年02月05日
    浏览(36)
  • 分布式计算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之与MapReduce的对比

    我们已经知道Spark是如何设计和实现数据处理流程的,这里我们 再深入思考一下,为什么Spark能够替代MapReduce成为主流的大数据处理框架呢?对比MapReduce,Spark究竟有哪些优势? 一 优势 1 通用性:         基于函数式编程思想,MapReduce将数据类型抽象为,k,v格式,并将数

    2024年02月13日
    浏览(37)
  • 关于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)
  • Hive312的计算引擎由MapReduce(默认)改为Spark(亲测有效)

    一、Hive引擎包括:默认MR、tez、spark 在低版本的hive中,只有两种计算引擎mr, tez 在高版本的hive中,有三种计算引擎mr, spark, tez 二、Hive on Spark和Spark on Hive的区别 Hive on Spark:Hive既存储元数据又负责SQL的解析,语法是HQL语法,执行引擎变成了Spark,Spark负责采用RDD执行。 Spark o

    2024年02月02日
    浏览(40)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包