从hadoop中的job conf获取输入路径

时间:2013-02-07 14:00:57

标签: java hadoop hdfs

我将路径设置为conf的输入位置

FileInputFormat.setInputPaths(conf, new Path("path/to/folder"));

当我尝试实现自己的RecordReader

时,如何从conf中检索此位置

提前致谢...

1 个答案:

答案 0 :(得分:3)

此调用设置的属性为map.input.dir,因此这适用于您:

conf.get("map.input.dir");

在旁注中,您的记录阅读器应根据initialize(InputSplit, TaskAttemptContext)方法中给出的输入拆分进行操作,因为您在setInputPath中传递的文件夹实际上将解析为多个输入拆分,通常每个输入拆分一个文件夹中的文件(以及可能的多个输入拆分,用于较大的可拆分文件)。

基于

FileInputFormat的输入格式将FileSplit传递给initialize方法,您应该能够从FileSplit.getPath()方法中提取要处理的实际文件。