我们都知道,如果一个输入文件很大,它会被分成大小相等的几个部分(默认大小为64MB)。假设我有一个104MB大的.txt文件。理论上,这个文件分为两个部分(一个是64 mb大,另一个是40 mb大)。分裂可能发生在单词的中间吗?例如,“hadoop”、“ha”将是第一次拆分的结束,“doop”将是第二次拆分的开始。如果出现这种情况,我们如何正确地执行字数计算问题?
ifmq2ha21#
该逻辑被封装在为Map器配置的inputformat中。inputformat有不同的子类,您可以选择特定于Map器使用的文件类型的子类。例如,textinputformat类在换行符上换行。分割的开始或结束处可能有一个部分行,但逻辑会识别这些情况,并且仍然会将完整的行返回给一个Map器。
1条答案
按热度按时间ifmq2ha21#
该逻辑被封装在为Map器配置的inputformat中。inputformat有不同的子类,您可以选择特定于Map器使用的文件类型的子类。例如,textinputformat类在换行符上换行。分割的开始或结束处可能有一个部分行,但逻辑会识别这些情况,并且仍然会将完整的行返回给一个Map器。