做有温度的教育!
全国统一咨询热线:18003608300
北京
校区
首页> 知识宝藏分享,为您打开学习之门 > 技术分享

Spark相对于MapReduce的优势

时间:2019-04-22
浏览:3687
发布:来源:
赞:3687

今天给大家介绍大数据开发中的Spark,并分析Spark和MapReduce的优劣势在哪里!


Spark是类Hadoop MapReduce的通用的并行计算框架,但不同于MapReduce的是Job中间输出和结果可以保存在内存中,也就是说spark是基于内存计算的,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的map reduce的算法


这里简单说一下对spark相对于mapreduce的优势:


1.中间结果:

传统的MapReduce虽然具有自动容错、平衡负载和可拓展性的优点,但是其缺点是采用非循环式的数据流模型(由于每一次MapReduce的输入/输出数据,都需要读取/写入磁盘当中,如果涉及到多个作业流程,就意味着多次读取和写入HDFS),使得在迭代计算式要进行大量的磁盘IO操作

RDD抽象出一个被分区、不可变、且能并行操作的数据集;从HDFS读取的需要计算的数据,在经过处理后的中间结果会作为RDD单元缓存到内存当中,并可以作为下一次计算的输入信息。***终Spark只需要读取和写入一次HDFS,这样就避免了Hadoop MapReduce的大IO操作


2.执行策略:

MapReduce在数据shuffle之前需要进行排序,而spark不需要对所有场景进行排序,这也就加快了spark的计算速度


3.更好的容错性:

spark中RDD之间维护了血缘关系,一旦某个RDD失败了,就能通过父类RDD自动重建,保证了容错性


4.spark更适合做实时流处理

MapReduce 更 加 适 合 处 理 离 线 数 据( 当 然, 在 YARN 之 后,Hadoop也可以借助其他工具进行流式计算)。Spark 很好地支持实时的流计算,依赖Spark Streaming 对数据进行实时处理。Spark Streaming 具备功能强大的 API,允许用户快速开发流应用程序。


5.易用性

spark的代码量比mapreduce少的多


6.spark的社区非常活跃

Spark 非常重视社区活动,组织也极为规范,会定期或不定期地举行与 Spark相关的会议。会议分为两种 :一种是 Spark Summit,影响力极大,可谓全球Spark技术人员的峰会,目前已于 2013—2015 年在 San Francisco 连续召开了三届Summit 大会 ;另一种是 Spark 社区不定期地在全球各地召开的小型 Meetup 活动。Spark Meetup 也会在我国的一些大城市定期召开。


一个良好的社区可以为开发者节省很多摸索的时间,那么你的选择是什么呢?不如跟甲骨文华育兴业一起探索数据的海洋吧!


【版权与免责声明】如发现内容存在版权问题,烦请提供相关信息联系我们,我们将及时沟通与处理。本站内容除非来源注明甲骨文华育兴业,否则均为网友转载,涉及言论、版权与本站无关。

精彩推荐

友情链接: bif

Copyright ©2016-2020. All Rights Reserved. 京ICP备17018991号-4