具有多个输入文件的hadoop流

eoxn13cs  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(390)

我想用hadoop使用流api从一组文件构建一个倒排索引。文档总是指使用一个文件,该文件的行中有要提供给Map器的条目。但在这种情况下,我有多个输入文件,我需要Map程序一次只处理一个文件。有没有办法做到这一点。出于预处理的原因,我需要这样的输入,并且不能使用文档引用的经典line=key,value格式的输入。

tez616oj

tez616oj1#

默认情况下,Map程序只处理一个文件,除非使用允许组合输入的输入类,如combinefileinputformat。
然后,如果您有10个文件,您将以10个Map器结束,每个Map器将只处理一个文件。如果您只使用Map器(而不是还原器),它将以10个输出文件(每个Map器一个)结束。
另一方面,如果有足够大的可拆分文件,则一个文件可能同时由多个Map器处理。

相关问题