我正在尝试将缓存文件添加到我的工作中。我在s3 bucket目录中拆分了文件。”s3n:pathsomthing“我想在mapper类的设置中导入它们。
我主要尝试了以下代码:
job.addCacheFile(new URI(args[1])); //path of the s3 with the files
在Map器中,在我使用的设置中:
protected void setup(Context context) throws IOException, InterruptedException {
Configuration conf = context.getConfiguration();
FileSystem fs = FileSystem.get(conf);
System.out.println("entring setup");
URI [] cacheFiles = context.getCacheFiles();
if((cacheFiles != null) && (cacheFiles.length >0)) {
for (URI cacheFile : cacheFiles) {
Path path = new Path(cacheFile.getPath().toString());
if (fs.exists(path)) {
FSDataInputStream in = fs.open(path);
readFile(in);
in.close();
}
}
}
打开和读取整个文件的正确方法是什么?
谢谢您!
暂无答案!
目前还没有任何答案,快来回答吧!