改進(jìn)的Spark Shuffle內(nèi)存分配算法
本文選題:Apache 切入點(diǎn):Spark 出處:《計(jì)算機(jī)應(yīng)用》2017年12期
【摘要】:Shuffle性能是影響大數(shù)據(jù)集群性能的重要指標(biāo),Spark自身的Shuffle內(nèi)存分配算法試圖為內(nèi)存池中的每一個(gè)Task平均分配內(nèi)存,但是在實(shí)驗(yàn)中發(fā)現(xiàn),由于各Task對(duì)于內(nèi)存需求的不均衡導(dǎo)致了內(nèi)存的浪費(fèi)和運(yùn)行效率較低的問題。針對(duì)上述問題,提出一種改進(jìn)的Spark Shuffle內(nèi)存分配算法。該算法根據(jù)Task的內(nèi)存申請(qǐng)量和歷史運(yùn)行數(shù)據(jù)將Task按內(nèi)存需求分為大小兩類,對(duì)小內(nèi)存需求型Task作"分割化"處理,對(duì)大內(nèi)存需求型Task基于Task溢出次數(shù)和溢出后等待時(shí)間分配內(nèi)存。該算法充分利用內(nèi)存池的空閑內(nèi)存,可以在數(shù)據(jù)傾斜導(dǎo)致的Task內(nèi)存需求不均衡的情況下進(jìn)行Task內(nèi)存分配的自適應(yīng)調(diào)節(jié)。實(shí)驗(yàn)結(jié)果表明,改進(jìn)后算法較原算法降低了Task的溢出率,減少了Task的周轉(zhuǎn)時(shí)間,提高了集群的運(yùn)行性能。
[Abstract]:Shuffle performance is an important indicator affecting big data's cluster performance. Spark's own Shuffle memory allocation algorithm tries to allocate memory equally for each Task in the memory pool, but it is found in the experiment.Due to the imbalance of memory requirements in Task, memory is wasted and inefficient.To solve the above problems, an improved Spark Shuffle memory allocation algorithm is proposed.According to the memory application amount and the historical running data of Task, the Task is divided into two categories according to the memory requirement, and the small memory demand type Task is "partitioned".For large memory Task based on Task overflow times and after overflow wait time allocation of memory.This algorithm makes full use of the free memory of memory pool and can adjust the Task memory allocation adaptively under the condition that the demand of Task memory caused by data skew is not balanced.The experimental results show that compared with the original algorithm, the improved algorithm reduces the overflow rate of Task, reduces the turnover time of Task, and improves the performance of the cluster.
【作者單位】: 中國(guó)民航大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院;
【基金】:國(guó)家自然科學(xué)基金資助項(xiàng)目(U1533104)~~
【分類號(hào)】:TP301.6;TP333
【相似文獻(xiàn)】
相關(guān)期刊論文 前10條
1 肖濟(jì)楷;386/486微機(jī)在系統(tǒng)優(yōu)化中的內(nèi)存處理技術(shù)[J];武漢鋼鐵學(xué)院學(xué)報(bào);1995年02期
2 周賓;章勇;;嵌入式Web訪問時(shí)的內(nèi)存丟失問題[J];單片機(jī)與嵌入式系統(tǒng)應(yīng)用;2009年10期
3 邵剛;使自己的應(yīng)用程序有“用不完”的內(nèi)存(二)[J];電子與電腦;1996年02期
4 盧春鵬;一種嵌入式系統(tǒng)的內(nèi)存分配方案[J];單片機(jī)與嵌入式系統(tǒng)應(yīng)用;2002年12期
5 靳廣斌,曹煥林;內(nèi)存的利用和優(yōu)化以及系統(tǒng)的典型配置[J];電力學(xué)報(bào);1995年03期
6 謝曉恒,李衛(wèi)華;利用擴(kuò)充內(nèi)存實(shí)現(xiàn)多幅圖象的快速存儲(chǔ)[J];計(jì)算機(jī)應(yīng)用研究;1997年02期
7 王路群;;微機(jī)內(nèi)存的綜合管理[J];成才;1997年01期
8 程小輝;何軍權(quán);梁?jiǎn)⒘?黃佳歡;顧俊杰;;基于預(yù)測(cè)原理的嵌入式內(nèi)存分配算法設(shè)計(jì)[J];計(jì)算機(jī)工程與設(shè)計(jì);2014年09期
9 薛靜鋒;胡昌振;郭曉靜;冷冰p,
本文編號(hào):1729263
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/1729263.html