bin/spark-submit
--classcom.huawei.cluster\
--masteryarn-cluster\
--driver-cores2\
--driver-memory30G\
--confspark.shuffle.service.ennabled=true
--confspark.memory.storageFraction=0.30 \
--confspark.memory.fraction=0.7 \
--confspark.default.parallelism=2800\
--confspark.sql.shuffle.partitions1=1400\
--confspark.yarn.executor.memeoryOverhead=4096\
--executor-memory30g \
--executor-cores8 \
--num-executors20\
默認(rèn) : 55開(kāi),預(yù)留300M
JVM-Memory =
Spark Memory( Storage Memory(用于緩存廣播變量等) 50% + Execution Memory(用戶緩存Shuffle的中間數(shù)據(jù))50%) 60% + User Memory( 用戶自己維護(hù)數(shù)據(jù)結(jié)構(gòu) ) 40% + (預(yù)留300M)Storage Memory : 用于緩存 廣播變量, 內(nèi)存. persist 側(cè)重存
Execution Memory : 用于shuffle的中間數(shù)據(jù)側(cè)重網(wǎng)絡(luò)分發(fā)和計(jì)算
參數(shù)設(shè)置
-- confspark.memory.fraction=0.7
設(shè)置Spark Memory內(nèi)存