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 的代码了解更多详情。
处理文本文件时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 的代码了解更多详情。