hadoop RecordReader如何识别记录

How does hadoop RecordReader identify records

处理文本文件时hadoop如何识别记录? 它是基于换行符还是句号?

如果我有一个包含 5000 个单词的文本文件列表,所有单词都在一行中,由 space 分隔;没有换行符、逗号或句号。 RecordReader 将如何表现?

例如abc pqr xyz lmn qwe rew poio kjkh ascd lkyg ......

您可以使用 textinputformat.record.delimiter 在配置中设置分隔符。

如果未提供,它将回退到根据以下之一拆分行:'\n' (LF) , '\r' (CR), or '\r\n' (CR+LF)。 因此,您的示例行将被读取为单个记录。

您可以通读 LineReader, TextInputFormat and LineRecordReader 的代码了解更多详情。