将URI作为运行时变量传递给mapreduce hadoop中的分布式缓存

时间:2014-11-05 06:38:16

标签: caching hadoop mapreduce distributed

我在mapreduce程序中使用分布式缓存,我将三个变量传递给此mapreduce程序input fileoutput dirconfig file

我想将第三个参数即配置文件添加到分布式缓存中。

我在MapReduce驱动程序的run()方法中设置如下参数: -

conf.set("CONF_XML", args[2]);

如何使用相同的方法将此文件添加到分布式缓存中。我该怎么做?

通常我们使用URI(new (file path));

添加
DistributedCache.addCacheFile(new URI(file_path), conf); << here how to pass the argument parameter? 

1 个答案:

答案 0 :(得分:2)

将文件路径参数作为URI

传递给DistributedCache API

DistributedCache.addCacheFile(new Path(args [2]) .toUri(),job.getConfiguration());