Spark 寬依賴和窄依賴

2021-08-26 05:22:52 字數 751 閱讀 2345

站在父rdd角度 窄依賴:一對一

站在父rdd角度 寬依賴:一對多

寬依賴和窄依賴:

寬依賴:父rdd的分割槽被子rdd的多個分割槽使用   例如 groupbykey、reducebykey、sortbykey等操作會產生寬依賴,會產生shuffle

窄依賴:父rdd的每個分割槽都只被子rdd的乙個分割槽使用  例如map、filter、union等操作會產生窄依賴

注意:join操作有兩種情況:如果兩個rdd在進行join操作時,乙個rdd的partition僅僅和另乙個rdd中已知個數的partition進行join,那麼這種型別的join操作就是窄依賴,例如圖1中左半部分的join操作(join with inputsco-partitioned);其它情況的join操作就是寬依賴,例如圖1中右半部分的join操作(join with inputsnot co-partitioned),由於是需要父rdd的所有partition進行join的轉換,這就涉及到了shuffle,因此這種型別的join操作也是寬依賴。

寬依賴和窄依賴 Spark 寬依賴和窄依賴

1.前言 上一節spark dag概述 spark中rdd的高效與dag圖有著莫大的關係,在dag排程中需要對計算過程劃分stage,暴力的理解就是stage的劃分是按照有沒有涉及到shuffle來劃分的,沒涉及的shuffle的都劃分在乙個stage裡面,這種劃分依據就是rdd之間的依賴關係。針對...

Spark 寬依賴和窄依賴

spark中rdd的高效與dag圖有著莫大的關係,在dag排程中需要對計算過程劃分stage,暴力的理解就是stage的劃分是按照有沒有涉及到shuffle來劃分的,沒涉及的shuffle的都劃分在乙個stage裡面,這種劃分依據就是rdd之間的依賴關係。針對不同的轉換函式,rdd之間的依賴關係分類...

spark 寬依賴和窄依賴

一 窄依賴 narrow dependency,即乙個rdd,對它的父rdd,只有簡單的一對一的依賴關係。也就是說,rdd的每個partition 僅僅依賴於父rdd中的乙個partition,父 rdd和子rdd的partition之間的對應關係,是一對一的!這種情況下,是簡單的rdd之間的依賴關...