【发布时间】:2013-12-04 16:28:20
【问题描述】:
我开发了一个使用 ToolRunner 的 MapReduce 应用程序。根据用户传递的参数和配置属性,应用程序以某种方式设置作业:选择特定的输入/输出格式,选择映射器和归约器类等。这个逻辑在 run(String[] args) 方法中实现我的主类,它实现了Configured 和Tool。
Oozie 支持 MapReduce 操作节点,但问题是我无法将它们与我的自定义 ToolRunner 应用程序一起使用。 MapReduce 操作仅允许通过配置输入/输出格式、映射器/归约器类和键/值类来定义静态作业。我的应用程序根据更高级别的业务逻辑动态地执行此操作。
该动作应该能够执行类似这样的命令行:
hadoop jar my.jar com.example.MyMainClass -D my.config1=a -D my.config2=b arg1 arg2
我可以创建支持ToolRunner MapReduce 应用程序的 Oozie 操作吗?
【问题讨论】:
标签: java hadoop mapreduce oozie