0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

spark为什么比mapreduce快?

京东云 来源:jf_75140285 作者:jf_75140285 2024-09-06 09:45 次阅读

spark为什么比mapreduce快?

首先澄清几个误区:

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

2;DAG计算模型减少的是磁盘I/O次数(相比于mapreduce计算模型而言),而不是shuffle次数,因为shuffle是根据数据重组的次数而定,所以shuffle次数不能减少


所以总结spark比mapreduce快的原因有以下几点:

1:DAG相比hadoop的mapreduce在大多数情况下可以减少磁盘I/O次数

因为mapreduce计算模型只能包含一个map和一个reduce,所以reduce完后必须进行落盘,而DAG可以连续shuffle的,也就是说一个DAG可以完成好几个

mapreduce,所以dag只需要在最后一个shuffle落盘,就比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所需要的开销(多线程模型也有缺点,由于同节点上所有任务运行在一个进行中,因此,会出现严重的资源争用,难以细粒度控制每个任务占用资源)

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 内存
    +关注

    关注

    8

    文章

    2902

    浏览量

    73532
  • SPARK
    +关注

    关注

    1

    文章

    105

    浏览量

    19821
  • MapReduce
    +关注

    关注

    0

    文章

    45

    浏览量

    6275
收藏 人收藏

    评论

    相关推荐

    PD充协议芯片的应用

    充技术里PD协议起到至关重要的作用,想要使设备达到快速充电,充协议是不可或缺的
    的头像 发表于 08-19 12:18 179次阅读
    PD<b class='flag-5'>快</b>充协议芯片的应用

    广汽能源与泰国Spark EV签订合作框架协议

    近日,广汽能源科技(泰国)有限公司与Spark EV Co.Ltd.宣布达成重要合作,双方共同签署了一项合作框架协议,旨在泰国境内全面布局并运营超级充电场站,为新能源汽车的普及与发展注入强劲动力。
    的头像 发表于 07-19 17:08 758次阅读

    spark运行的基本流程

    前言: 由于最近对spark的运行流程非常感兴趣,所以阅读了《Spark大数据处理:技术、应用与性能优化》一书。通过这本书的学习,了解了spark的核心技术、实际应用场景以及性能优化的方法。本文旨在
    的头像 发表于 07-02 10:31 248次阅读
    <b class='flag-5'>spark</b>运行的基本流程

    Spark基于DPU的Native引擎算子卸载方案

    1.背景介绍 Apache Spark(以下简称Spark)是一个开源的分布式计算框架,由UC Berkeley AMP Lab开发,可用于批处理、交互式查询(Spark SQL)、实时流处理
    的头像 发表于 06-28 17:12 320次阅读
    <b class='flag-5'>Spark</b>基于DPU的Native引擎算子卸载方案

    关于Spark的从0实现30s内实时监控指标计算

    前言 说起Spark,大家就会自然而然地想到Flink,而且会不自觉地将这两种主流的大数据实时处理技术进行比较。然后最终得出结论:Flink实时性大于Spark。 的确,Flink中的数据计算
    的头像 发表于 06-14 15:52 233次阅读

    充技术的演变与PW6606充电压诱骗芯片的应用

    随着科技的快速发展,移动设备对电能的需求日益增长,充技术应运而生。从最初的USB A口快充协议QC3.0、QC2.0,到TYPE C口的PD充协议,充技术经历了从初级到高级的演进。本文旨在探讨
    的头像 发表于 05-28 14:11 523次阅读
    <b class='flag-5'>快</b>充技术的演变与PW6606<b class='flag-5'>快</b>充电压诱骗芯片的应用

    如何利用DPU加速Spark大数据处理? | 总结篇

    SSD速度通过NVMe接口得到了大幅提升,并且网络传输速率也进入了新的高度,但CPU主频发展并未保持同等步调,3GHz左右的核心频率已成为常态。 在当前背景下Apache Spark等大数据处理工具中,尽管存储和网络性能的提升极大地减少了数据读取和传输的时间消耗,但
    的头像 发表于 04-02 13:45 832次阅读
    如何利用DPU加速<b class='flag-5'>Spark</b>大数据处理? | 总结篇

    Spark基于DPU Snappy压缩算法的异构加速方案

    一、总体介绍 1.1 背景介绍 Apache Spark是专为大规模数据计算而设计的快速通用的计算引擎,是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些不同之处使
    的头像 发表于 03-26 17:06 581次阅读
    <b class='flag-5'>Spark</b>基于DPU Snappy压缩算法的异构加速方案

    RDMA技术在Apache Spark中的应用

    背景介绍 在当今数据驱动的时代,Apache Spark已经成为了处理大规模数据集的首选框架。作为一个开源的分布式计算系统,Spark因其高效的大数据处理能力而在各行各业中广受欢迎。无论是金融服务
    的头像 发表于 03-25 18:13 1347次阅读
    RDMA技术在Apache <b class='flag-5'>Spark</b>中的应用

    基于DPU和HADOS-RACE加速Spark 3.x

    背景简介 Apache Spark(下文简称Spark)是一种开源集群计算引擎,支持批/流计算、SQL分析、机器学习、图计算等计算范式,以其强大的容错能力、可扩展性、函数式API、多语言支持(SQL
    的头像 发表于 03-25 18:12 1148次阅读
    基于DPU和HADOS-RACE加速<b class='flag-5'>Spark</b> 3.x

    Blaze: 用Rust重写Spark执行层,平均提升30%算力

    随着机器硬件的发展,RAM的价格也大幅降低,这时Spark提出了弹性分布式数据集(RDD),这是一种分布式内存抽象,可以让程序员以容错的方式在大型集群上执行内存计算。
    的头像 发表于 11-22 17:46 801次阅读
    Blaze: 用Rust重写<b class='flag-5'>Spark</b>执行层,平均提升30%算力

    苹果M3 Pro芯片跑分曝光:多核性能仅M2 Pro6%

    基本版本的m3 prom2 pro性能核心较少,因此这种差异当然会对多core结果产生相当大的影响。在geekbench 6的最新性能测试中,苹果公司的“中端”soc m3 pro令人失望,而3nm芯片仅之前的m2 pro
    的头像 发表于 11-06 14:26 2186次阅读

    5G还要快10倍的技术已经来了!

    5.5G真的5G十倍?
    的头像 发表于 10-26 16:08 298次阅读

    充的三种实现方式是什么?充对电池的损害程度大吗?

    充的三种实现方式是什么?充对电池的损害程度大吗? 充技术在近年来随着移动设备的普及而得到广泛应用。传统的充电方式需要几个小时才能完成,但是充技术大大缩短了充电时间。这种技术被广
    的头像 发表于 10-22 15:08 1033次阅读

    锂电池充带来了什么风险?锂电池充的风险有哪些?

    锂电池充技术问题,锂电池充带来了什么风险?在迟迟发明不出来更好替代品的情况下,充成为了临时解决方案。
    发表于 10-20 17:20 500次阅读