【问题标题】:How to pass parameters to Hadoop ToolRunner (or any MapReduce Action) from Oozie workflow如何从 Oozie 工作流向 Hadoop ToolRunner(或任何 MapReduce Action)传递参数
【发布时间】:2013-08-23 04:13:17
【问题描述】:

从命令行,可以将参数传递给 ToolRunner,如下所示:

hadoop jar myJar.jar com.Main -Dprop1=prop1value -Dprop2=prop2value

我想在 Oozie 的 MapReduce 操作中调用我的 MapReduce 作业。

我尝试在工作流中定义属性如下:

<property>
     <name>param1</name>
     <value>Hello World</value>
</property>

编辑 这就是我尝试从 MapReduce 作业中读取参数的方式:

Job job = new Job();
Configuration conf = job.getConfiguration();
System.out.println(conf.get("param1"));

但我无法从 mapreduce 程序中读取它。

虽然我的问题是向 ToolRunner 传递参数,但我认为这不是 toolrunner 特有的。它一般用于使用 Oozie MapReduce 操作调用的 MapReduce 作业。 任何帮助将不胜感激!

【问题讨论】:

    标签: hadoop mapreduce oozie


    【解决方案1】:

    【讨论】:

    • 是的,我已经完成了这些。这些示例告诉您如何运行一般 MapReduce 操作以及如何配置 MapReduce 作业(map 类、reduce 类等),但它们不包括如何将参数传递给作业
    • 你能举个例子,你是如何传递和尝试获取参数的吗?
    • 添加到我的问题中,我通过在工作流.xml 中的&lt;configuration&gt; 标记中定义我的问题中所说的属性来传递参数
    猜你喜欢
    • 2013-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-17
    • 2016-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多