spark重要参数调优建议:spark.default.parallelism设置每个stage默认的task数量
生活随笔
收集整理的這篇文章主要介紹了
spark重要参数调优建议:spark.default.parallelism设置每个stage默认的task数量
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
spark.default.parallelism
參數說明:該參數用于設置每個stage的默認task數量。這個參數極為重要,如果不設置可能會直接影響你的Spark作業性能。
參數調優建議:Spark作業的默認task數量為500~1000個較為合適。很多同學常犯的一個錯誤就是不去設置這個參數,那么此時就會導致Spark自己根據底層HDFS的block數量來設置task的數量,默認是一個HDFS block對應一個task。通常來說,Spark默認設置的數量是偏少的(比如就幾十個task),如果task數量偏少的話,就會導致你前面設置好的Executor的參數都前功盡棄。試想一下,無論你的Executor進程有多少個,內存和CPU有多大,但是task只有1個或者10個,那么90%的Executor進程可能根本就沒有task執行,也就是白白浪費了資源!因此Spark官網建議的設置原則是,設置該參數為num-executors * executor-cores的2~3倍較為合適,比如Executor的總CPU core數量為300個,那么設置1000個task是可以的,此時可以充分地利用Spark集群的資源。
總結
以上是生活随笔為你收集整理的spark重要参数调优建议:spark.default.parallelism设置每个stage默认的task数量的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spark on yarn简单部署
- 下一篇: MobaXterm无法退格删除,出现^H