2014-10-17 66 views
0

我想知道这些文件是如何在Hadoop中分割的。我的意思是,我知道它们被分割成一定的大小(例如64MB),但是是否会发生中断,在行结尾还是某些字符等?Hadoop如何分割文件?

此外,名称节点如何跟踪文件被拆分的顺序,比如如何在从数据节点收集这些文件后按顺序组装它们。

回答

1

LineRecordReader读取每一行并将键/值对发送给映射器实例。
如果EOL出现在定义的块大小(在本例中为64MB)之前,则阅读器继续到下一行。
现在,如果读取器达到块大小而不是EOL,则它会继续读取,直到EOL并设置为块。
现在,下一个块从读者停止的地方开始(即,在EOL之后)。

Reference

+0

什么是该块大小在这种情况下,即,当延伸时未达到EOL极限 – Snehansu 2014-10-19 04:40:02