Spark GC 高級(jí)優(yōu)化

  • 在java heap 空間中會(huì)分成兩個(gè)區(qū)域 Young 和Old蜕琴,Young部分主要存儲(chǔ)的是 存活時(shí)間短的對(duì)象翰蠢;而Old 部分主要保存的是存在時(shí)間更長(zhǎng)對(duì)象

  • Young 部分又可以細(xì)分成三部分,分別為 Eden谅猾、Survivor1、Survivor2

  • 簡(jiǎn)單描述下gc的過(guò)程:當(dāng)Eden部分滿,就觸發(fā)一次在Eden上的小GC迅耘,將在Eden和Survivor1上的對(duì)象 拷貝到Surviv2,Survivor 區(qū)域會(huì)做切換监署。如果一個(gè)對(duì)象已經(jīng)存在足夠時(shí)間或Survivor2的空間滿了颤专,那就將對(duì)象挪到Old 區(qū)域。最終當(dāng)Old區(qū)域快要消耗完時(shí)就觸發(fā) 完整GC钠乏,會(huì)比較耗性能

    • 在Spark的gc優(yōu)化目標(biāo)栖秕,確保長(zhǎng)時(shí)間保留保留的RDDs被存儲(chǔ)在Old 區(qū)域,在Young 區(qū)域有足夠的空間來(lái)存儲(chǔ)短時(shí)間存儲(chǔ)的對(duì)象晓避。盡量避免在task execution中產(chǎn)生的臨時(shí)對(duì)象觸發(fā) full GC簇捍,可以采用以下幾步設(shè)置來(lái)優(yōu)化

    1: 通過(guò)觀察GC stats查看是是否再task還沒(méi)結(jié)束前有多次的full GC只壳,如果發(fā)現(xiàn)很多次,就表示執(zhí)行task時(shí)內(nèi)存不足
    2: 在GC stats中暑塑,如果發(fā)現(xiàn)小gc觸發(fā)次數(shù)比較多吼句,就需要增加Eden區(qū)域的大小來(lái)優(yōu)化。你可以設(shè)置一個(gè)超過(guò)task需要的內(nèi)存數(shù)來(lái)設(shè)置Eden部分的大小事格。假設(shè)該預(yù)估值為E惕艳,你就可以設(shè)置Young 區(qū)域的大小 -Xmn=4/3E (擴(kuò)展到4/3 因?yàn)檫€需要考慮到Survivor部分的)
    3: 通過(guò)查看gc stats 發(fā)現(xiàn)OldGen部分的空間接近消耗完,減少緩存內(nèi)存總量 spark.memory.fraction驹愚;通過(guò)緩存更少的對(duì)象远搪,降低task執(zhí)行速度》贽啵或 考慮減少Young區(qū)域的小大谁鳍,如果上面有設(shè)置過(guò)-Xmn值,那就適當(dāng)?shù)臏p少該值劫瞳。如果沒(méi)有變更多-Xmn值就試著修改JVM的NewRatio參數(shù)倘潜,絕大部分JVM 中設(shè)置的默認(rèn)值2,意思是說(shuō)Old 部分占整個(gè)heap的2/3,它必須做夠大要超過(guò)spark.memory.fraction的值
    4: 開(kāi)啟G1GC 通過(guò) -XX:+UseG1GC選項(xiàng)柠新,在gc成為瓶頸的時(shí)候可以顯著提升性能窍荧。注意在需要執(zhí)行消耗過(guò)多內(nèi)存的任務(wù)時(shí),增加G1 region 的大小會(huì)非常關(guān)鍵 —XX:G1HeapRegionSize
    5: 舉一個(gè)例子恨憎,當(dāng)你的task是從HDFS中讀取數(shù)據(jù)蕊退,一個(gè)task需要消耗多少內(nèi)存可以通過(guò)HDFS的block大小來(lái)預(yù)估,注意解壓后的block一般會(huì)增加23倍的大小憔恳,我們希望在同一個(gè)工作進(jìn)程中可以有34個(gè)task瓤荔,并且HDFS的block大小為128MB,所以可以得到預(yù)估值E Eden值 (3
    4*128MB)
    6: 設(shè)置完之后钥组,在監(jiān)控gc stats的信息是否有多改變

    PS:監(jiān)控gc的情況  -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps to the Java options.
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末输硝,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子程梦,更是在濱河造成了極大的恐慌点把,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,542評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件屿附,死亡現(xiàn)場(chǎng)離奇詭異郎逃,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)挺份,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門褒翰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事优训《淠悖” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,912評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵揣非,是天一觀的道長(zhǎng)抡医。 經(jīng)常有香客問(wèn)我,道長(zhǎng)妆兑,這世上最難降的妖魔是什么魂拦? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,449評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮搁嗓,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘箱靴。我一直安慰自己腺逛,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,500評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布衡怀。 她就那樣靜靜地躺著棍矛,像睡著了一般。 火紅的嫁衣襯著肌膚如雪抛杨。 梳的紋絲不亂的頭發(fā)上够委,一...
    開(kāi)封第一講書(shū)人閱讀 51,370評(píng)論 1 302
  • 那天,我揣著相機(jī)與錄音怖现,去河邊找鬼茁帽。 笑死,一個(gè)胖子當(dāng)著我的面吹牛屈嗤,可吹牛的內(nèi)容都是我干的潘拨。 我是一名探鬼主播,決...
    沈念sama閱讀 40,193評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼饶号,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼铁追!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起茫船,我...
    開(kāi)封第一講書(shū)人閱讀 39,074評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤琅束,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后算谈,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體涩禀,經(jīng)...
    沈念sama閱讀 45,505評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,722評(píng)論 3 335
  • 正文 我和宋清朗相戀三年濒生,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了埋泵。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,841評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖丽声,靈堂內(nèi)的尸體忽然破棺而出礁蔗,到底是詐尸還是另有隱情,我是刑警寧澤雁社,帶...
    沈念sama閱讀 35,569評(píng)論 5 345
  • 正文 年R本政府宣布浴井,位于F島的核電站,受9級(jí)特大地震影響霉撵,放射性物質(zhì)發(fā)生泄漏磺浙。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,168評(píng)論 3 328
  • 文/蒙蒙 一徒坡、第九天 我趴在偏房一處隱蔽的房頂上張望撕氧。 院中可真熱鬧,春花似錦喇完、人聲如沸伦泥。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,783評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)不脯。三九已至,卻和暖如春刻诊,著一層夾襖步出監(jiān)牢的瞬間防楷,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,918評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工则涯, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留复局,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,962評(píng)論 2 370
  • 正文 我出身青樓是整,卻偏偏與公主長(zhǎng)得像肖揣,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子浮入,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,781評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容