一、寬窄依賴
窄依賴:父RDD的一個分區數據全部發往子RDD的一個分區
寬依賴:父RDD的一個分區數據發往子RDD的多個分區,也稱為shuffle
二、Spark是如何進行內存計算的?DAG的作用?Stage階段劃分的作用?
(1)Spark生成DAG圖
(2)基于寬窄依賴對DAG圖進行階段劃分
(3)每個stage內部都是窄依賴,窄依賴內,前后形成1:1的分區關系,一個stage的多個并行任務就成為了多個內存迭代計算管道
(4)這些內存迭代計算的管道,就是一個個具體的執行Task
(5)一個Task是一個具體的線程,任務跑在一個線程之中,就是走內存計算了。