天天看點

Spark 資源和資料并行度優化分析2 | 學習筆記

開發者學堂課程【大資料實時計算架構 Spark 快速入門:Spark 資源和資料并行度優化分析2 】學習筆記,與課程緊密聯系,讓使用者快速學習知識。

課程位址:

https://developer.aliyun.com/learning/course/100/detail/1685

Spark 資源和資料并行度優化分析2

内容簡介:

一、SPARK_WORKER_INSTANCE

二、Stage 的切割

三、Repartition 算子

一、SPARK_WORKER_INSTANCESPARK_WORKER_INSTANCE

SPARK_WORKER_INSTANCE,to set the number of worker processes per node (決定了每個節裡面由多少個執行個體)  

二、 Stage 的切割

切割 stage 根據寬依賴進行(或者說根據 shuffle 進行) shuffle 分為 map 端和reduce端。

三、 REPARTITION 算子

repartition 算子,用于任意将 RDD 的 partition 增多或者減少!

coalesce 僅僅将 RDD 的 partition 減少!

使用 Spark SQL 從 HIVE 中查詢資料時候, spark SQL 會根據 HIVE/ 對應的hdfs 檔案的 block 的數量決定加載出來的 RDD 的 partition 有多少個!

預設的 partition 的數量是我們根本無法設定的

有時可能它會自動設定的 partition 的數量過少,為了進行優化可以提高并行度,就對 RDD 使用 repartition 算子!