可以采取的Hadoop从多个目录和文件输入(Can hadoop take input from m

2019-09-02 06:44发布

当我设置fileinputFormat作为Hadoop的输入。 所述arg[0]+"/*/*/*"表示不匹配的文件。

我想是从多个文件来阅读:

Directory1
---Directory11
   ---Directory111
        --f1.txt
        --f2.txt
---Directory12
Directory2
---Directory21

是否有可能在Hadoop中? 谢谢!

Answer 1:

您可以通过使用*****运营商需要从多个目录和文件输入。 最有可能是因为“ARG [0]”的说法是不正确的,因此它没有找到的文件。

作为替代方案,你也可以使用InputFormat.addInputPath或者如果你需要单独的格式或映射器的MultipleInputs可以使用类。

基本的实施例中添加的路径

FileInputFormat.addInputPath(job, myInputPath);

下面是MultipleInputs的一个例子

MultipleInputs.addInputPath(job, inputPath1, TextInputFormat.class, MyMapper.class);
MultipleInputs.addInputPath(job, inputPath2, TextInputFormat.class, MyOtherMapper.class);

这另一个问题也很相似,并且具有很好的答案, Hadoop的从多种格式信号输入减少 。



文章来源: Can hadoop take input from multiple directories and files
标签: input hadoop