1

我一直在搜索 mrunit 文档,但到目前为止还没有找到它。我如何在我的 mrunit 中传递配置参数。

例如,如果我以字数为例。

可以说,在我的驱动程序代码中,我正在设置此参数...

conf.set("delimiter",args[2])

在我的映射器代码中,我将其称为:

String delimiter = conf.get("delimiter");
String [] tokens = value.toString().split(delimiter);
for (String token:tokens)
   context.write(token,one);

如何设置此配置参数。

我一直在研究这个例子: https ://github.com/wpm/Hadoop-Word-Count/blob/master/src/test/java/wpmcn/hadoop/WordCountTest.java

谢谢

4

2 回答 2

2

使用MapDriver.withConfiguration

 Configuration conf = new Configuration();
 conf.set("delimiter", someValue);
 myMapDriver.withConfiguration(conf);
于 2013-10-27T03:14:08.150 回答
1

我有类似的问题,我按照下面的代码解决了它。

mapDriver.withInput(key, value);
mapDriver.getConfiguration().set("my.config.param", "my.config.param.value");
.....
.....
mapDriver.run();

请注意 mapDriver.getContext().getConfiguration 在这种情况下可能不起作用,因为上下文对象是 API 中的模拟对象。

于 2016-11-23T09:01:50.890 回答