Spark優化總結(一) 資料傾斜

2021-10-02 01:31:35 字數 697 閱讀 8896

舉例:hive分桶導致的資料傾斜

舉例:kafka分割槽導致的資料傾斜

舉例:hive分桶、kafka分割槽

舉例:分布式mpp架構資料庫

另外,即便不是分布式資料庫,如果你的資料庫只有乙個節點可用,同樣會造成該問題

舉例:hbase的rowkey設計錯誤

簡約示意圖

// 資料原狀態

| node1 | node2 | node3

count | 10050 | 10002 | 10035

↓// where/filter 根據條件過濾

| node1 | node2 | node3

count | 5000 | 510 | 490

↓// 有的節點符合條件的多,有的節點符合條件的少

// 如果繼續進行map型別的處理,node1將遠遠慢於node2、node3,同時node2、node3還處於空閒狀態(浪費)

// 如果每條資料的處理時間消耗比較大,node1與node2、node3的差距將非常大

↓// 使用repartition,重新分布

| node1 | node2 | node3

count | 2014 | 1997 | 1989

↓// 繼續進行map型別處理,每個節點的計算資源都利用起來了

// ……

spark優化之資料傾斜

資料傾斜的概念 有的時候,我們可能會遇到大資料計算中乙個最棘手的問題 資料傾斜,此時spark作業的效能會比期望的差的多。資料傾斜調優,就是使用各種技術方案解決不同型別的資料傾斜問題以保證spark作業的效能 絕大多數task執行的都非常快,但個別task執行極慢,比如,總共有1000個task,9...

Spark效能優化指南 資料傾斜

調優概述 有的時候,我們可能會遇到大資料計算中乙個最棘手的問題 資料傾斜,此時spark作業的效能會比期望差很多。資料傾斜調優,就是使用各種技術方案解決不同型別的資料傾斜問題,以保證spark作業的效能。資料傾斜發生時的現象 絕大多數task執行得都非常快,但個別task執行極慢。比如,總共有100...

Spark 資料傾斜

計算資料時,資料分散度不夠,導致大量資料集中到一台或幾台機器上計算。區域性計算遠低於平均計算速度,整個過程過慢。部分任務處理資料量過大,可能oom,任務失敗,進而應用失敗。1 executor lost driver oom shuffle過程出錯 2 正常執行任務突然失敗 3 單個executor...