spark学习笔记之二:宽依赖和窄依赖

1.如果父RDD里的一个partition只去向一个子RDD里的partition为窄依赖,否则为宽依赖(只要是shuffle操作)。
2.spark根据算子判断宽窄依赖:
     窄依赖:map,filter,union
     宽依赖:groupByKey,join
3.宽窄依赖用于切割 action算子生成的工作(job):
    根据宽依赖(shuffle )一个job会被切分成多个stage(阶段)去执行,一个stage包含多个task。
    一个partition的一条流水线(pipeline)操作,被封装为一个task(任务)即集群计算的最小单元。
    尽量减少shuffle。
4.DAG(有向无环图):
     窄依赖不分stage也就是DAG优化,

你可能感兴趣的:(spark)