Spark快的原因

来源:2-3 Spark特性详解

M_996

2020-02-03

PK哥,从网上找的资料,Spark快是以下三个原因吗

1、消除了冗余的HDFS读写
Hadoop每次shuffle操作后,必须写到磁盘,而Spark在shuffle后不一定落盘,可以cache到内存中,以便迭代时使用。如果操作复杂,很多的shufle操作,那么Hadoop的读写IO时间会大大增加。

2、消除了冗余的MapReduce阶段
Hadoop的shuffle操作一定连着完整的MapReduce操作,冗余繁琐。而Spark基于RDD提供了丰富的算子操作,且reduce操作产生shuffle数据,可以缓存在内存中。

3、JVM的优化
Hadoop每次MapReduce操作,启动一个Task便会启动一次JVM,基于进程的操作。而Spark每次MapReduce操作是基于线程的,只在启动Executor是启动一次JVM,内存的Task操作是在线程复用的。

4、Spark是基于内存进行数据处理的,MapReduce是基于磁盘进行数据处理的

写回答

1回答

Michael_PK

2020-02-03

这些都是对的,再补充一个:spark是基于dag模型

0
2
Michael_PK
回复
M_996
是的,没错
2020-02-04
共2条回复

SparkSQL入门 整合Kudu实现广告业务数据分析

大数据工程师干货课程 带你从入门到实战掌握SparkSQL

535 学习 · 192 问题

查看课程