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