我可以提交包含多个配置文件的oozie作业吗?

时间:2012-12-19 19:07:12

标签: hadoop configuration-files oozie

从Oozie CLI我想做这样的事情:

oozie job -oozie http://host:port/oozie -config jobConfig.properties, baseConfig.properties -submit

我正在运行很多不同的工作,其中.properties文件的一部分是相同的。我希望能够将该重复部分移动到单个baseConfig.properties文件中,并在我提交作业时将其与作业特定部分结合起来。

2 个答案:

答案 0 :(得分:9)

如果被覆盖的属性数量很少,您只需引用基本配置文件,然后对要自定义的每个属性使用-Dprop1=value表示法。

否则我认为你有两个(可能是三个)替代方案(因为你不能将多个配置选项传递给当前的OOZIE客户端):

  1. 创建一个脚本,将基本和作业特定的属性文件连接在一起,并使用合并文件的名称运行oozie
  2. 使用OozieCLI中的来源作为起点,编写一个扩展类,可以处理-config选项的CSV值,或者可以处理多个-config参数实例
  3. 您是否能够将公共属性移动到每个操作的静态jobXml文件中,然后您只需要一个配置文件来查找作业运行之间的实际差异。

答案 1 :(得分:1)

我可以将默认值放入config-default.xml文件中,如下所示: http://oozie.apache.org/docs/3.3.2/WorkflowFunctionalSpec.html#a4.1_Workflow_Job_Properties_or_Parameters

它适用于大多数情况。