Spark RDD概念学习系列之RDD的依赖关系(宽依赖和窄依赖)(三)
RDD的依赖关系? RDD和它依赖的parent RDD(s)的关系有两种不同的类型,即窄依赖(narrow dependency)和宽依赖(wide dependency)。 1)窄依赖指的是每一个parent RDD的Partition最多被子RDD的一个Partition使用,如图1所示。 2)宽依赖指的是多个子RDD的Partition会依赖同一个parent RDD的Partition,如图2所示。 RDD作为数据结构,本质上是一个只读的分区记录集合。一个RDD可以包含多个分区,每个分区就是一个dataset片段。RDD可以相互依赖。 1)如果RDD的每个分区最多只能被一个Child RDD的一个分区使用,则称之为narrow dependency。 2)如果多个Child RDD分区都可以依赖,则称之为wide / shuffle dependency 。 Spark之所以将依赖分为narrow 和 shuffle / wide 。基于两点原因 1、首先,narrow dependencies可以支持在同一个cluster node上,以pipeline...