shuffle(洗牌)把mapper階段的結(jié)果拷貝到reducer階段
分為兩部分竿报,mapshuffle,reduceshuffle
- mapshuffle:map的輸出結(jié)果輸出到內(nèi)存的緩沖區(qū),緩沖區(qū)數(shù)量和map數(shù)量對(duì)應(yīng)驾讲,緩沖區(qū)有百分比岔乔,map寫入緩沖區(qū)超過(guò)了這個(gè)百分比瞻佛,就會(huì)自動(dòng)刷入map的機(jī)器本地磁盤
內(nèi)存在這里做了一些操作:分區(qū)(和reduce數(shù)量一致)梅忌,排序,map的輸出結(jié)果不斷地從緩沖區(qū)中刷出僧鲁,刷出多個(gè)文件虐呻,后臺(tái)會(huì)有一個(gè)線程按照分區(qū)合并這些文件 - reduceshuffle:會(huì)拷貝map的結(jié)果,把文件先做一個(gè)排序悔捶,再做合并铃慷,這些數(shù)據(jù)作為reduce的輸入