hadoop mapreduce流中的多个文件输出

时间:2013-11-14 10:13:12

标签: java python hadoop mapreduce

我使用hadoop map并减少程序。我需要读取一个多文件并将其输出到多个文件

示例

Input \  one.txt 
         two.txt 
         three.txt 

Output \ 
         one_out.txt
         two_out.txt

我需要得到这样的东西。我怎样才能做到这一点。

请帮助我

谢谢

1 个答案:

答案 0 :(得分:1)

  • 如果文件很小,您只需使用 FileInputFormat ,而hadoop将在内部为每个文件生成单独的映射器任务,最终会生成输出文件相应的输入文件(如果没有涉及减速器)。
  • 如果文件很大,则需要编写自定义输入格式,并指定isSplittable(false)。它将确保hadoop不会跨映射器拆分文件,并且不会为每个输入文件生成多个输出文件