最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

spark提交參數(shù)的優(yōu)化

2023-03-24 09:37 作者:Cpp程序員  | 我要投稿

新接觸一個spark集群,明明集群資源(core,內(nèi)存)還有剩余,但是提交的任務卻申請不到資源。

分析

環(huán)境

spark 2.2.0
基于yarn集群

參數(shù)

spark任務提交參數(shù)中最重要的幾個:
spark-submit --master yarn --driver-cores 1 --driver-memory 5G --executor-cores 2 --num-executors 16 --executor-memory 4G

driver-cores driver端核數(shù)
driver-memory driver端內(nèi)存大小
executor-cores 每個執(zhí)行器的核數(shù)
num-executors 此任務申請的執(zhí)行器總數(shù)
executor-memory 每個執(zhí)行器的內(nèi)存大小

那么,該任務將申請多少資源呢?

申請的執(zhí)行器總內(nèi)存數(shù)大小=num-executor * (executor-memory +spark.yarn.executor.memoryOverhead) = 16 * (4 + 2) = 96
申請的總內(nèi)存=執(zhí)行器總內(nèi)存+dirver端內(nèi)存=101
申請的總核數(shù)=num-executor*executor-core + yarn.AM(默認為1)=33
運行的總?cè)萜?contanier) = num-executor + yarn.AM(默認為1) = 17

所以這里還有一個關(guān)鍵的參數(shù)?spark.yarn.executor.memoryOverhead

這個參數(shù)是什么意思呢?
堆外內(nèi)存,每個executor歸spark 計算的內(nèi)存為executor-memory,每個executor是一個單獨的JVM,這個JAVA虛擬機本向在的內(nèi)存大小即為spark.yarn.executor.memoryOverhead,不歸spark本身管理。在spark集群中配置。也可在代碼中指定
spark.set("spark.yarn.executor.memoryOverhead", 1)

這部份實際上是存放spark代碼本身的究竟,在executor-memory內(nèi)存不足的時候也能應應急頂上。

問題所在

假設(shè)一個節(jié)點16G的內(nèi)存,每個executor-memory=4,理想情況下4x4=16,那么該節(jié)點可以分配出4個節(jié)點供spark任務計算所用。
1.但應考慮到spark.yarn.executor.memoryOverhead.
如果spark.yarn.executor.memoryOverhead=2,那么每個executor所需申請的資源為4+2=6G,那么該節(jié)點只能分配2個節(jié)點,剩余16-6x2=4G的內(nèi)存,無法使用。

如果一個集群共100個節(jié)點,用戶將在yarn集群主界面看到,集群內(nèi)存剩余400G,但一直無法申請到資源。

2.core也是一樣的道理。

很多同學容易忽略spark.yarn.executor.memoryOverhead此參數(shù),然后陷入懷疑,怎么申請的資源對不上,也容易陷入優(yōu)化的誤區(qū)。

優(yōu)化結(jié)果

最終優(yōu)化結(jié)果,將spark.yarn.executor.memoryOverhead調(diào)小,并根據(jù)node節(jié)點資源合理優(yōu)化executor-memory,executor-core大小,將之前經(jīng)常1.6T的內(nèi)存占比,降到1.1左右。并能較快申請到資源。


spark提交參數(shù)的優(yōu)化的評論 (共 條)

分享到微博請遵守國家法律
海南省| 德钦县| 常山县| 旬阳县| 彝良县| 城固县| 扶绥县| 武义县| 白河县| 荔浦县| 长宁区| 图片| 崇州市| 新密市| 额济纳旗| 裕民县| 苍山县| 淳化县| 车致| 大洼县| 井研县| 双峰县| 泊头市| 佛冈县| 漾濞| 富阳市| 永福县| 平昌县| 贵德县| 杂多县| 泸定县| 抚松县| 柯坪县| 泾阳县| 榆树市| 子长县| 安塞县| 大名县| 芦溪县| 永昌县| 阳原县|