資源簡(jiǎn)介
1.inputformat
在MapReduce程序的開發(fā)過程中,往往需要用到FileInputFormat與TextInputFormat,我們會(huì)發(fā)現(xiàn)TextInputFormat這個(gè)類繼承自FileInputFormat,F(xiàn)ileInputFormat這個(gè)類繼承自InputFormat,InputFormat這個(gè)類會(huì)將文件file按照邏輯進(jìn)行劃分,劃分成的每一個(gè)split切片將會(huì)被分配給一個(gè)Mapper任務(wù),文件先被切分成split塊,而后每一個(gè)split切片對(duì)應(yīng)一個(gè)Mapper任務(wù)
FileInputFormat的劃分機(jī)制:
A. 簡(jiǎn)單地按照文件的內(nèi)容長(zhǎng)度進(jìn)行切片
B. 切片大小,默認(rèn)等于 block 大小
C. 切片時(shí)不考慮數(shù)據(jù)集整體,而是逐個(gè)針對(duì)每一個(gè)文件單獨(dú)切片
默認(rèn)情況下, split size =block size,在 hadoop 2.x 中為 128M。
注意:bytesRemaining/splitSize > 1.1 不滿足的話,那么最后所有剩余的會(huì)作為一個(gè)切片。從而不會(huì)形成例如 129M 文件規(guī)劃成兩個(gè)切片的局面。
代碼片段和文件信息
評(píng)論
共有 條評(píng)論