mapper会忽略哪些文件作为输入?

时间:2013-11-07 07:32:43

标签: hadoop filter ignore mapper

我正在链接多个MapReduce作业,并希望传递/存储一些元信息(例如原始输入的配置或名称)和结果。至少文件“_SUCCESS”以及目录“_logs”中的任何内容都会被忽略。

InputReader默认忽略任何文件名模式吗?或者这只是一个固定的有限列表?

1 个答案:

答案 0 :(得分:14)

FileInputFormat默认使用以下hiddenFileFilter

  private static final PathFilter hiddenFileFilter = new PathFilter(){
      public boolean accept(Path p){
        String name = p.getName(); 
        return !name.startsWith("_") && !name.startsWith("."); 
      }
    }; 

因此,如果您使用任何FileInputFormat(例如TextInputFormatKeyValueTextInputFormatSequenceFileInputFormat),则隐藏文件(文件名以“_”或“。”开头)。 “)将被忽略。

您可以使用FileInputFormat.setInputPathFilter设置自定义PathFilter。请记住,hiddenFileFilter始终处于有效状态。