卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

系統(tǒng)內(nèi)存管理技巧 如何管理Spark內(nèi)存?

如何管理Spark內(nèi)存?火花存儲(chǔ)器管理當(dāng)Spark執(zhí)行一個(gè)應(yīng)用時(shí),Spark cluster會(huì)啟動(dòng)兩個(gè)JVM進(jìn)程,驅(qū)動(dòng)程序和執(zhí)行器。驅(qū)動(dòng)負(fù)責(zé)創(chuàng)建SparkContext上下文,提交任務(wù),分發(fā)任務(wù)。執(zhí)行

如何管理Spark內(nèi)存?

火花存儲(chǔ)器管理

當(dāng)Spark執(zhí)行一個(gè)應(yīng)用時(shí),Spark cluster會(huì)啟動(dòng)兩個(gè)JVM進(jìn)程,驅(qū)動(dòng)程序和執(zhí)行器。驅(qū)動(dòng)負(fù)責(zé)創(chuàng)建SparkContext上下文,提交任務(wù),分發(fā)任務(wù)。執(zhí)行器負(fù)責(zé)任務(wù)的計(jì)算任務(wù),并將結(jié)果返回給驅(qū)動(dòng)。同時(shí),有必要為需要堅(jiān)持的RDD提供存儲(chǔ)。驅(qū)動(dòng)端的內(nèi)存管理比較簡(jiǎn)單,這里說的Spark內(nèi)存管理是針對(duì)執(zhí)行端的內(nèi)存管理。

Spark內(nèi)存管理分為靜態(tài)內(nèi)存管理和統(tǒng)一內(nèi)存管理。Spark1.6之前使用靜態(tài)內(nèi)存管理,Spark1.6之后引入統(tǒng)一內(nèi)存管理。

靜態(tài)內(nèi)存管理中的存儲(chǔ)內(nèi)存、執(zhí)行內(nèi)存和其他內(nèi)存的大小在Spark應(yīng)用程序運(yùn)行期間是固定的,但是用戶可以在應(yīng)用程序啟動(dòng)之前對(duì)它們進(jìn)行配置。

統(tǒng)一內(nèi)存管理和靜態(tài)內(nèi)存管理的區(qū)別在于存儲(chǔ)內(nèi)存和執(zhí)行內(nèi)存共享同一個(gè)空間,可以互相借用。;的空間。

1.6以上的Spark1.6版本默認(rèn)使用統(tǒng)一內(nèi)存管理,通過設(shè)置參數(shù)為true(默認(rèn)為false)可以使用靜態(tài)內(nèi)存管理。

一.具體細(xì)節(jié)

1.靜態(tài)內(nèi)存管理圖

2.統(tǒng)一內(nèi)存管理圖

3.如何在reduce中處理OOM?

當(dāng)提取數(shù)據(jù)時(shí),您可以 不要一次就把它放下。如果你把它放下,你可以覆蓋磁盤。

1)減少每次拉取的數(shù)據(jù)量。

2)增加洗牌聚合的記憶比例。

3)增加執(zhí)行程序的總內(nèi)存。

4.無序調(diào)諧

默認(rèn)值:32k參數(shù)說明:該參數(shù)用于設(shè)置shuffle寫任務(wù)的BufferedOutputStream的緩沖區(qū)大小。在將數(shù)據(jù)寫入磁盤文件之前,它將被寫入緩沖區(qū),直到緩沖區(qū)滿了,它才會(huì)溢出到磁盤。調(diào)優(yōu)建議:如果作業(yè)的可用內(nèi)存資源足夠,可以適當(dāng)增加該參數(shù)的大小(例如64k,必須是倍數(shù)),從而減少shuffle寫過程中重寫磁盤文件的次數(shù),進(jìn)而減少磁盤IO的數(shù)量,從而提高性能。在實(shí)踐中發(fā)現(xiàn),合理調(diào)整該參數(shù),性能將提高1%~5%。默認(rèn)值:48m參數(shù)說明:該參數(shù)用于設(shè)置shuffle read任務(wù)的緩沖區(qū)大小,這個(gè)緩沖區(qū)決定了一次可以拉取多少數(shù)據(jù)。調(diào)優(yōu)建議:如果作業(yè)的可用內(nèi)存資源足夠,可以適當(dāng)增加該參數(shù)的大小(例如96m),以減少拉取數(shù)據(jù)的次數(shù),從而減少網(wǎng)絡(luò)傳輸?shù)拇螖?shù),提高性能。在實(shí)踐中發(fā)現(xiàn),合理地調(diào)整這個(gè)參數(shù)。性能會(huì)提升1%~5%。默認(rèn)值:3參數(shù)說明:混排讀任務(wù)從混排寫任務(wù)所在節(jié)點(diǎn)拉取自身數(shù)據(jù)時(shí),如果因網(wǎng)絡(luò)異常導(dǎo)致拉取失敗,會(huì)自動(dòng)重試。此參數(shù)表示最大重試次數(shù)。如果在指定的次數(shù)內(nèi)拉仍然不成功,可能會(huì)導(dǎo)致作業(yè)執(zhí)行失敗。調(diào)優(yōu)建議:對(duì)于那些涉及特別耗時(shí)的shuffle操作的作業(yè),建議增加最大重試次數(shù)(例如60次),以避免由于JVM s滿gc或網(wǎng)絡(luò)不穩(wěn)定。實(shí)踐中發(fā)現(xiàn),調(diào)整這個(gè)參數(shù)可以大大提高數(shù)據(jù)量巨大(幾十億到幾十億)的洗牌過程的穩(wěn)定性。Shuffle file not find任務(wù)調(diào)度程序不負(fù)責(zé)重試任務(wù),但DAGScheduler負(fù)責(zé)重試任務(wù)。默認(rèn)值:5s參數(shù)說明:具體解釋同上。該參數(shù)代表每次拉取數(shù)據(jù)的等待間隔,默認(rèn)值為5s。調(diào)優(yōu)建議:建議加大間隔(如60s)以增加洗牌操作的穩(wěn)定性。默認(rèn)值:0.2參數(shù)說明:該參數(shù)表示執(zhí)行程序內(nèi)存中分配給聚集操作的shuffle read任務(wù)的內(nèi)存比例,默認(rèn)值為20%。優(yōu)化建議:資源參數(shù)優(yōu)化中解釋了該參數(shù)。如果有足夠的內(nèi)存,并且很少使用持久化操作,建議增加這個(gè)比例,給shuffle read的聚合操作更多的內(nèi)存,避免聚合過程中由于內(nèi)存不足導(dǎo)致頻繁的磁盤讀寫。實(shí)踐中發(fā)現(xiàn),通過合理調(diào)整該參數(shù),性能可以提高10%左右。默認(rèn)值:sort|hash參數(shù)說明:該參數(shù)用于設(shè)置ShuffleManager的類型。在Spark 1.5之后,有三個(gè)選項(xiàng):hash、sort和鎢排序。HashShuffleManager是Spark 1.2之前的默認(rèn)選項(xiàng),但Spark 1.2及以后的版本默認(rèn)都是SortShuffleManager。鎢-sort類似于sort,但是它使用了鎢計(jì)劃中的堆外內(nèi)存管理機(jī)制,使得內(nèi)存使用更加高效。調(diào)優(yōu)建議:由于SortShuffleManager默認(rèn)對(duì)數(shù)據(jù)進(jìn)行排序,如果您的業(yè)務(wù)邏輯中需要這種排序機(jī)制,可以使用默認(rèn)的SortShuffleManager。如果你的商業(yè)邏輯不。;t不需要對(duì)數(shù)據(jù)進(jìn)行排序,建議參考以下參數(shù)進(jìn)行優(yōu)化,避免通過bypass機(jī)制或優(yōu)化的HashShuffleManager進(jìn)行排序操作。同時(shí)提供更好的磁盤讀寫性能。這里需要注意的是,鎢排序應(yīng)該謹(jǐn)慎使用,因?yàn)橹耙呀?jīng)發(fā)現(xiàn)了一些相應(yīng)的bug。默認(rèn)值:200參數(shù)說明:ShuffleManager為SortShuffleManager時(shí),如果shuffle read任務(wù)數(shù)小于此閾值(默認(rèn)值為200),則在shuffle write過程中不會(huì)對(duì)數(shù)據(jù)進(jìn)行排序,而是以非優(yōu)化HashShuffleManager的寫入,但是每個(gè)任務(wù)生成的所有臨時(shí)磁盤文件都會(huì)合并到一個(gè)文件中,并單獨(dú)創(chuàng)建一個(gè)索引文件。調(diào)優(yōu)建議:當(dāng)你使用SortShuffleManager時(shí),如果你真的不 t需要排序操作,那么建議將該參數(shù)調(diào)整為大于混排讀取任務(wù)的數(shù)量。那么此時(shí)會(huì)自動(dòng)啟用旁路機(jī)制,map端不會(huì)排序,減少排序的性能開銷。但是這樣的話還是會(huì)產(chǎn)生大量的磁盤文件,所以shuffle write的性能還有待提高。默認(rèn)值:false參數(shù)說明:如果使用了HashShuffleManager,則該參數(shù)有效。如果設(shè)置為true,那么合并機(jī)制將被啟動(dòng),shuffle write的輸出文件將被大大合并。對(duì)于大量混排讀任務(wù)的情況,該方法可以大大降低磁盤IO開銷,提高性能。調(diào)優(yōu)建議:如果SortShuffleManager的排序機(jī)制確實(shí)沒有必要,可以嘗試手動(dòng)將參數(shù)指定為hash,使用HashShuffleManager并在旁路機(jī)制之外開啟consolidate機(jī)制。在實(shí)踐中試用發(fā)現(xiàn),其性能比開啟旁路機(jī)制的SortShuffleManager高10%~30%。

5.無序播放調(diào)諧設(shè)置

如何使用SparkShuffle調(diào)優(yōu)配置項(xiàng)?

1)代碼方面,不建議硬編碼。

新SparkConf()。設(shè)置(";,"; 64 ";)

2)提交星火任務(wù)時(shí),建議。

火花-提交-確認(rèn)-確認(rèn)…

3)在conf下的配置文件中,不建議使用,因?yàn)閷懲暌院笏袘?yīng)用都會(huì)用到。

華為手機(jī)文件管理怎么清除內(nèi)存?

華為手機(jī)內(nèi)存文件夾清理方法是:

1.打開文件管理,在搜索欄中輸入緩存。該文件夾可以刪除。

2.在搜索欄輸入temp,這個(gè)文件夾就可以刪除了。

3.在搜索欄中輸入d此文件夾是下載緩存文件,也可以刪除。

4.在搜索字段中輸入backup。該文件夾可以刪除。