将文件从s3 bucket导入hadoop程序(在java、eclipse中)

mw3dktmi  于 2021-05-29  发布在  Hadoop
关注(0)|答案(0)|浏览(254)

我正在尝试将缓存文件添加到我的工作中。我在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();
                   }
            }
        }

打开和读取整个文件的正确方法是什么?
谢谢您!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题