RDD之间的依赖关系是指RDD之间的上下来源关系,RDD2依赖RDD1,RDD4依赖于RDD2和RDD3,RDD7依赖于RDD6和RDD4。

shuffle的算子一般都会是宽依赖,比如groupByKey、reduceByKey、join等,宽依赖是一对多的关系,窄依赖是一对一关系

假如stage1中的宽依赖计算过程报错,右边其中某个partition错误,马上会重新计算,把宽依赖的左边的partitions全部重新计算,重新得到右边的partition,所以在处理过程中,把某个宽依赖的数据cache到内存中,是常用方法。
每个partition的计算就是一个task,task是调度的基本单位,若一个stage中的包含了其他stage的任务全部完成,这个stage中的任务才会被加入调度。
网友评论