開發者學堂課程【大資料實時計算架構 Spark 快速入門:Spark 資源和資料并行度優化分析2 】學習筆記,與課程緊密聯系,讓使用者快速學習知識。
課程位址:
https://developer.aliyun.com/learning/course/100/detail/1685Spark 資源和資料并行度優化分析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 算子!