提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 前言
- 一、RDD依赖
- 二、宽窄依赖
- 1.窄依赖(Narrow Dependency)
- 2.宽依赖 (Shuffle 依赖) (Wide Dependency)
- 三、流水线优化
- 总结
前言
首先,我们先对Spark的内核调度做个理解。
Spark的核心是根据RDD来实现的,Spark Scheduler则为Spark核心实现的重要一环,其作用就是任务调度。Spark的任务调度就是如何组织任务去处理RDD中每个分区的数据,根据RDD的依赖关系构建DAG,基于DAG划分Stage,将每个Stage中的任务发到指定节点运行。基于Spark的任务调度原理,可以合理规划资源利用,做到尽可能用最少的资源高效地完成任务计算。
一、RDD依赖
为什么要设计宽窄依赖?
&nb