0
我有一個128 MB的文件,因此它被分成2個塊(塊大小= 64 MB)。 我想一個固定長度的文件轉換爲使用自定義記錄Reader類分隔的ASCII文件記錄讀取器拆分將固定長度轉換爲分隔的ASCII文件
問題:
當文件的第一分流處理,我能得到記錄正常,當我看到在數據頂部的配置單元表中,它也訪問數據節點2以獲取字符,直到記錄結束。 但是,第二次拆分以\ n字符開頭,記錄數量也增加了一倍。
Ex:
First Split: 456 2348324534 34953489543 349583534
Second Split:
456 23 48324534 34953489543 349583534
作爲記錄讀者序跳過其在第一輸入讀出的字符的一部分分割下面的代碼段中加入
FixedAsciiRecordReader(FileSplit genericSplit, JobConf job) throws IOException {
if ((start % recordByteLength) > 0) {
pos = start - (start % recordByteLength) + recordByteLength;
}
else {
pos = start;
}
fileIn.skip(pos);
}
的輸入的固定長度文件具有\ n字符在每個記錄的末尾。
是否還應將任何值設置爲啓動變量?