spark 中 寬依賴 和 窄依賴的 區別及優缺點

2021-08-21 03:06:53 字數 563 閱讀 3182

窄依賴與寬依賴的概述:

rdd 中的--寬依賴---父rdd每個分割槽的資料可能被多個子rdd分割槽使用 ,子rdd分割槽通常對應所有的父rdd分割槽,這其中分為兩種情況:1,乙個父rdd的分割槽對應所有的子rdd的分割槽(沒有core-patitioned過的join)2,乙個父rdd分割槽對應非全部的的多個rdd分割槽(groupbykey)

rdd中的--窄依賴---父rdd每個分割槽的只被子rdd的乙個分割槽使用,子rdd 通常對應常數個父rdd分割槽,這其中分為兩種情況:1,乙個子rdd分割槽對應乙個父rdd分割槽(filter,map)2,乙個子rdd分割槽對應多個父rdd分割槽(co-partitioned過的join)

窄依賴與寬依賴的優缺點:

寬依賴----有shuffle----要跨網路拉去資料-----耗資源,窄依賴----乙個節點內完成轉化-----快速

當子rdd 需要重算時,寬依賴 會重算所有父rdd分割槽的資料,這樣會出現多餘的重算,窄依賴只需計算對應的乙個父rdd的資料即可

寬依賴:reducebykey grupbykey combinebykey,sortbykey, join(no copartition)

寬依賴和窄依賴 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 寬依賴和窄依賴

站在父rdd角度 窄依賴 一對一 站在父rdd角度 寬依賴 一對多 寬依賴和窄依賴 寬依賴 父rdd的分割槽被子rdd的多個分割槽使用 例如 groupbykey reducebykey sortbykey等操作會產生寬依賴,會產生shuffle 窄依賴 父rdd的每個分割槽都只被子rdd的乙個分割...