0
,我想實現我自己的RecordReader獲取輸入路徑在Hadoop中
我設置的路徑作爲輸入位置的conf
FileInputFormat.setInputPaths(conf, new Path("path/to/folder"));
我怎樣才能檢索到該位置回從CONF在此先感謝...
,我想實現我自己的RecordReader獲取輸入路徑在Hadoop中
我設置的路徑作爲輸入位置的conf
FileInputFormat.setInputPaths(conf, new Path("path/to/folder"));
我怎樣才能檢索到該位置回從CONF在此先感謝...
此調用設置的屬性是map.input.dir
,所以這應該爲你工作:
conf.get("map.input.dir");
在附註中,您的記錄閱讀器應該按照initialize(InputSplit, TaskAttemptContext)
方法給出的輸入拆分進行操作,因爲您在setInputPath中傳遞的文件夾實際上會解析爲多個輸入拆分,通常爲文件夾中的每個文件分配一個(以及可能的多個輸入拆分,用於較大的可拆分文件)。
FileInputFormat
基於輸入格式將FileSplit
傳遞給初始化方法,您應該能夠從FileSplit.getPath()
方法中提取出要處理的實際文件。
要增加@ChrisWhite的答案,它也可以在hashkey「mapred.input.dir」下面。 –