
讓客戶(hù)滿(mǎn)意是我們工作的目標(biāo),不斷超越客戶(hù)的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶(hù),將通過(guò)不懈努力成為客戶(hù)在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊(cè)、網(wǎng)頁(yè)空間、營(yíng)銷(xiāo)軟件、網(wǎng)站建設(shè)、蒲縣網(wǎng)站維護(hù)、網(wǎng)站推廣。



MapReduce 如何解決負(fù)載均衡和數(shù)據(jù)傾斜:
階段主要出在Map作業(yè)結(jié)束后,shuffer(洗牌)過(guò)程中,如何將map處理后的結(jié)果分成多少份,交由Reduce作業(yè),使得每部分reduce作業(yè)盡可能均衡處理數(shù)據(jù)計(jì)算。
系統(tǒng)默認(rèn)將partitions 按照Hash模運(yùn)算分割(存儲(chǔ)對(duì)象的hash值與reduce的個(gè)數(shù)取模),這樣很容易出現(xiàn)數(shù)據(jù)傾斜,導(dǎo)致其中一個(gè)reduce作業(yè)分得大量數(shù)據(jù)計(jì)算,另一個(gè)ruduce作業(yè)基本上沒(méi)有任何數(shù)據(jù)處理。如何,解決的這種事情,就需要靠程序控制partitions的值
Sort:默認(rèn)排序是按照字典排序的(按ASCII)
Shuffer階段比較的操作要執(zhí)行兩次,一次是map task之后的sort另一次是在從本次磁盤(pán)將partition數(shù)據(jù)拷貝到指定reduce 之前的合并,將符合統(tǒng)一范圍的key的數(shù)據(jù)歸并


面試:
1.partition:將map輸出的數(shù)據(jù),按照某種規(guī)則將數(shù)據(jù)劃分,分給哪一個(gè)reduce,默認(rèn)使用hash模運(yùn)算執(zhí)行
2.spill:
過(guò)程:map的內(nèi)存緩存區(qū)數(shù)據(jù)填滿(mǎn)時(shí),啟動(dòng)一個(gè)單獨(dú)的線程,將數(shù)據(jù)按照一定比例寫(xiě)入本地磁盤(pán)。
Sort:將數(shù)據(jù)按照大小排序(可自定義)默認(rèn)字典排序
Combiner:(可有可無(wú))將相同的K_V中的value加起來(lái),減少溢寫(xiě)磁盤(pán)的數(shù)據(jù)

Shuffer的后半過(guò)程:
將map處理后放入map節(jié)點(diǎn)的本地磁盤(pán)的數(shù)據(jù)拷貝到rudece節(jié)點(diǎn)的內(nèi)存中 去,數(shù)據(jù)量少的話(huà),直接交由reduce處理。數(shù)據(jù)量大的時(shí)候,同樣需要溢寫(xiě)到磁盤(pán)中,按照K值相同的方法進(jìn)行merge,然后在交由指定的reduce執(zhí)行

修改默認(rèn)hdfs的block大小:
這個(gè)需要修改hdfs-site.conf配置文件,增加全局參數(shù)dfs.block.size。
如下:
修改后參數(shù),
把配置同步到其它節(jié)點(diǎn),并重啟hdfs。


分享標(biāo)題:hadoop1.x MapReduce工作原理
網(wǎng)址分享:http://chinadenli.net/article18/jpeodp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)、小程序開(kāi)發(fā)、網(wǎng)站收錄、移動(dòng)網(wǎng)站建設(shè)、全網(wǎng)營(yíng)銷(xiāo)推廣、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)