Spark效能優化--資料本地性
資料本地化目的,只移動計算,不移動資料,避免網路資源浪費。
1.首先了解Application任務執行流程:
• 在Spark Application提交後,Driver會根據action運算元劃分成一個個的job,然後對每一 個job劃分成一個個的stage,stage內部實際上是由一系列平行計算的task組成的,然後 以TaskSet的形式提交給你TaskScheduler,TaskScheduler在進行分配之前都會計算出每一個task最優計算位置。Spark的task的分配演算法優先將task釋出到資料所在的節點上,從而達到資料最優計算位置。
2. – 資料本地化五種級別
• PROCESS_LOCAL 程式本地化
• NODE_LOCA 節點本地化
• NO_PREF 沒有本地化
• RACK_LOCAL 機架本地化(叢集內)
• ANY 跨機架本地化
具體介紹如下圖:
3.Spark的task的具體分配演算法
4. 資料本地性調優
– 配置引數
• spark.locality.wait driver端等待executor執行task 3s
• spark.locality.wait.process 等待程式本地化的時間,預設和 spark.locality.wait相等
• spark.locality.wait.node
• spark.locality.wait.rack
- 如何設定引數:
new SparkConf().set(“spark.locality.wait ”,”6s”);
- 通過比較task執行時間來確定最優引數;
檢視資料本地化執行的方法:
1.檢視Console 列印的日誌--推薦
2.通過Driver的WEB UI檢視 埠:4040
相關文章
- Spark效能優化:優化資料結構Spark優化資料結構
- Spark效能優化Spark優化
- spark讀取hdfs資料本地性異常Spark
- spark效能優化(一)Spark優化
- Spark不同Cluster Manager下的資料本地性表現Spark
- Spark Streaming 效能優化Spark優化
- Spark效能最佳化篇三:資料傾斜調優Spark
- Spark(十三) Spark效能調優之RDD持久化Spark持久化
- spark效能優化幾點注意Spark優化
- 【效能優化】ORACLE資料庫效能優化概述優化Oracle資料庫
- Spark 效能調優--資源調優Spark
- Spark 3.x Spark Core詳解 & 效能優化Spark優化
- Spark效能優化指南:高階篇Spark優化
- Spark效能優化指南:基礎篇Spark優化
- 資料庫效能優化資料庫優化
- 資料庫效能優化2資料庫優化
- Oracle資料庫效能優化Oracle資料庫優化
- MYSQL 大資料效能優化MySql大資料優化
- Spark效能調優Spark
- Spark效能優化:對RDD持久化或CheckPoint操作Spark優化持久化
- 資料庫效能優化之SQL語句優化資料庫優化SQL
- Spark讀取MongoDB資料的方法與優化SparkMongoDB優化
- 資料庫優化效能解析資料庫優化
- ORACLE資料庫效能優化概述Oracle資料庫優化
- 資料庫效能優化總結資料庫優化
- Spark的效能調優Spark
- 資料庫效能優化-索引與sql相關優化資料庫優化索引SQL
- Spark效能優化:提高並行度、使用reduceByKeySpark優化並行
- Spark效能優化:診斷記憶體的消耗Spark優化記憶體
- 資料庫效能優化有哪些方式資料庫優化
- 效能優化:如何更快地接收資料優化
- Oracle資料庫訪問效能優化Oracle資料庫優化
- 資料倉儲效能優化技術優化
- MySQL資料庫的效能優化指南MySql資料庫優化
- JavaScript資料訪問效能優化方案JavaScript優化
- 資料庫效能優化有哪些措施?資料庫優化
- Oracle資料庫效能優化總結Oracle資料庫優化
- [zt] 談資料庫的效能優化資料庫優化