Spark与Hadoop相比的优点

Spark与Hadoop相比的优点

4大特点

首先,Spark 把中间数据放到内存中,迭代运算效率高。MapReduce 中计算结果需要落地,保存到磁盘上,这样势必会影响整体速度,而 Spark 支持 DAG 图的分布式并行计算的编程框架,减少了迭代过程中数据的落地,提高了处理效率。(延迟加载)
同时由于有转移操作和行动操作, 可以对执行计划进行优化,避免一些不必要的shuffle资源开销。

其次,Spark 容错性高。Spark 引进了弹性分布式数据集 RDD (Resilient DistributedDataset) 的抽象,它是分布在一组节点中的只读对象集合,这些集合是弹性的,如果数据集一部分丢失,则可以根据“血统”(即允许基于数据衍生过程)对它们进行重建。另外在RDD 计算时可以通过 CheckPoint 来实现容错。

Spark 操作的算子更多 。
mapreduce 只提供了 Map 和 Reduce 两种操作,
Spark 提供的数据集操作类型有很多,大致分为:Transformations 和 Actions 两大类。Transformations包括 Map、Filter、FlatMap、Sample、GroupByKey、ReduceByKey、Union、Join、Cogroup、MapValues、Sort 等多种操作类型,同时还提供 Count,
Actions 包括 Collect、Reduce、Lookup 和 Save 等操作

支持的运算平台,支持的开发语言更多。
spark 4 种开发语言:
scala,java,python,R

参考:
https://blog.csdn.net/weixin_35353187/article/details/82763663

发布了273 篇原创文章 · 获赞 1 · 访问量 4723

猜你喜欢

转载自blog.csdn.net/wj1298250240/article/details/103935724