如何合理設置spark-submit參數

基礎的一些參數:

--executor-cores 2(每臺機器核數)

--num-executors 20  (executor 節點數,不要太多5-20,如果程序涉及數據交換較多,節點數過多會引起大量shuffle write,影響實際執行效率;同時與集羣資源有關,申請資源需要合理,不要影響其他業務;集羣網絡不佳時,節點數過多會擴大對執行效率的影響

--driver-memory 12g  (主節點內存,根據主節點數據量設置)

--executor-memory 10g  (每個節點內存,根據總數據量設置)

--conf spark.yarn.maxAppAttempts=1  (失敗重試次數,默認重試4次,前期任務調試階段,重試次數最好設置爲1,可以較快得到執行結果;後期業務上線,也使用默認參數)

--conf spark.default.parallelism=100 (一般不設置,或根據cores和executors計算,cores*executors的2-3倍

 --conf spark.shuffle.memoryFraction=0.6  (shuffle內存佔比,默認0.2 即20%,視實際情況進行調整)

--conf spark.storage.memoryFraction=0.2 (每個節點數據存儲內存佔比,默認0.6 即60%,可根據程序rdd的cache持久化設置大小)

詳細進一步參考點擊打開鏈接 http://www.uml.org.cn/bigdata/2016060810.asp

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章