成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

如何理解sparkonyarn內(nèi)存分配

如何理解spark on yarn內(nèi)存分配,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。  

創(chuàng)新互聯(lián)主要從事網(wǎng)站設(shè)計制作、成都網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)老邊,十年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108

1. 基礎(chǔ)概念
要掌握這個知識點,要了解以下幾個點:
  1. spark driver和executor的on-heap內(nèi)存是如何配置的。
  2. spark driver和excutor的off-heap內(nèi)存是如何配置的。
  3. yarn的最小調(diào)度單元。
首先,講一下上面的這三個概念吧:
1). spark.driver.memory
默認(rèn)值1g。driver進(jìn)程的on-heap內(nèi)存,driver進(jìn)程就是sparkcontext初始化所在的進(jìn)程。在client模式下driver的堆內(nèi)存,不要通過SparkConf設(shè)置,要用--driver-memory命令替換,或者在默認(rèn)的配置文件里配置。
2). spark.driver.memoryOverhead
默認(rèn)值是max(DriverMemory*0.1,384m)。在YARN或者kubernetes模式的cluster模式下,driver端申請的off-heap內(nèi)存的總量,通常是driver堆內(nèi)存的6%-10%。
3). spark.executor.memory
默認(rèn)值1g。Executor的jvm內(nèi)存總量。
4). spark.executor.memoryOverhead
默認(rèn)值max(executor*0.1,384).單個executor申請的off-heap內(nèi)存的總量。該參數(shù)僅僅支持在yarn或者kubernetes上使用,通??梢允莈xecutor內(nèi)存的0.06-0.1。
5).spark.yarn.am.memory
默認(rèn)值512m,Appmaster在client模式下的內(nèi)存。假如是Cluster模式下會使用spark.driver.memory來代替。
6).Yarn的最小調(diào)度單元
yarn調(diào)度container有個最小粒度,資源調(diào)度的時候必須是其整數(shù)倍,最小粒度的配置參數(shù)是
   
     
   
   
   yarn.scheduler.minimum-allocation-mb
最小調(diào)度單元默認(rèn)值是1024,單位是mb。
2.cluster模式
浪尖這里的案例是40個executor,單個executor內(nèi)存申請的時候是20GB,driver是20GB,yarn的web ui截圖如下:
如何理解spark on yarn內(nèi)存分配
整個APP申請的總內(nèi)存是 923648MB=902GB。
spark app申請的單個 Executor內(nèi)存,從1.3和1.4可以得知是:

   
     
   
   
   20GB * 0.1 +20GB=22GB
那么40個executor內(nèi)存是:  

   
     
   
   
   22GB * 40 = 880GB
spark on yarn 的cluster模式下Driver端與appmaster是在一起的,所以appmaster內(nèi)存參數(shù)無效,因此driver和executor總內(nèi)存由1.1和1.2可得:
20GB * 0.1 +20GB=22G
那么計算所得的總內(nèi)存是:
   
     
   
   
   22GB+88 GB正好是 902GB。
上面計算的案例中,由于浪院長這里的yarn集群內(nèi)存調(diào)度的最小粒度是1GB貌似,在上面的計算中沒有參與度。
3.cluster模式下

此時假設(shè)是10個executor,每個executor的內(nèi)存是19GB,driver的內(nèi)存依然是19GB。
首先,我們先看一下,web ui的總內(nèi)存:
如何理解spark on yarn內(nèi)存分配
換算成GB就是236544MB/1024 = 231GB
那么經(jīng)計算可以指導(dǎo)單個executor的內(nèi)存是:
19*1.1GB =20.9GB
Yarn的最小調(diào)度單元是1GB,所以單個executor調(diào)度的時候內(nèi)存是21GB。
10個executor的總內(nèi)存就是 21 *10 = 210GB
經(jīng)計算可以得到driver的內(nèi)存是19*1.1GB= 21GB
那么計算所得的spark app內(nèi)存和 yarn ui上所得內(nèi)存一致。
4.注意點
上述計算要想正確要確保:
沒有開啟動態(tài)executor申請與釋放,假設(shè)開啟了,要視情況計算。

看完上述內(nèi)容,你們掌握如何理解spark on yarn內(nèi)存分配的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!

當(dāng)前題目:如何理解sparkonyarn內(nèi)存分配
文章起源:http://jinyejixie.com/article30/ppejso.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、靜態(tài)網(wǎng)站網(wǎng)站導(dǎo)航、外貿(mào)網(wǎng)站建設(shè)軟件開發(fā)、企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站
镇远县| 辽源市| 大姚县| 东宁县| 和顺县| 福建省| 邢台县| 永济市| 富阳市| 伊春市| 桦南县| 宁安市| 庄浪县| 永吉县| 科尔| 澎湖县| 新和县| 凤山县| 禹州市| 扶余县| 贡嘎县| 宁国市| 昭苏县| 闽清县| 中宁县| 新干县| 华亭县| 长岛县| 凯里市| 河北省| 烟台市| 临夏市| 宽城| 博客| 沧州市| 葫芦岛市| 时尚| 长岭县| 尚志市| 阜平县| 介休市|