0

大师!

很长一段时间我找不到以下问题的答案:hadoop 如何在写入过程中拆分大文件。示例:1) 块大小 64 Mb 2) 文件大小 128 Mb(平面文件,包含文本)。

当我写文件时,它将被分成两部分(文件大小/块大小)。但是... Block1 之后的可能出现 将在... word300 word301 wo 和 Block 2 将开始 rd302 word303 ... 写案例将是

Block1 将在 ... word300 word301 结束,Block 2 将从 word302** word303 ...

或者你可以在写hadoop拆分算法的地方链接。

先感谢您!

4

2 回答 2

0

该文件将根据字节任意拆分。因此,它可能会将其拆分为woand之类的东西rd302

这不是您通常需要担心的问题,而是系统的设计方式。MapReduce 作业的InputFormatRecordReader部分处理在记录边界之间拆分的记录。

于 2012-06-18T16:49:47.447 回答
0

查看这个wiki 页面,hadoopInputFormat将读取 FileSplit 的最后一行超出分割边界,并且当读取第一个 FileSplit 以外的内容时,它会忽略直到第一个换行符的内容。

于 2012-06-18T17:53:47.503 回答