DAG的宽窄依赖?

窄依赖:父RDD的一个分区,全部将数据发给子RDD的一个分区

宽依赖:父RDD的一个分区,将数据发给子RDD的多个分区

宽依赖还有一个别名: shuffle

DAG调度器

工作内容:将逻辑的DAG图进行处理,最终得到逻辑上的Task划分

Task调度器

工作内容:基于DAG Scheduler的产出,来规划这些逻辑的task,应该在哪些物理的executor上运行,以及监控管理它们的运行

内存迭代计算?

Spark是怎么做内存计算的? DAG的作用? Stage阶段划分的作用?

Spark会产生DAG图

DAG图会基于分区和宽窄依赖关系划分阶段

一个阶段的内部都是窄依赖,窄依赖内,如果形成前后1:1的分区对应关系,就可以产生许多内存迭代计算的管道

这些内存迭代计算的管道,就是一个个具体的执行Task

一个Task是一个具体的线程,任务跑在一个线程内,就是走内存计算了.