Hadoop流媒体与多个输入文件

时间:2015-09-04 20:47:27

标签: hadoop mapreduce hadoop-streaming

我想使用Streaming API从一组文件中使用Hadoop构建反向索引。文档总是指使用一个文件,该文件的行具有要映射到的映射器的条目。但在这种情况下,我有多个输入文件,我需要映射器一次只处理一个文件。有没有办法实现这一目标。出于预处理的原因,我需要输入是这样的,我不能使用文档引用的经典line = key,value格式输入。

1 个答案:

答案 0 :(得分:0)

默认情况下,映射器只处理一个文件,除非您使用允许组合输入的输入类,如CombineFileInputFormat。

然后,如果你有10个文件,你将以10个映射器结束,每个文件只处理一个文件。如果您只使用将以10个输出文件结尾的映射器(而不是缩减器)(每个映射器一个)。

另一方面,如果你有足够大的可分割文件,那么一个文件可能会同时处理一个文件。