11

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

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

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

4

2 回答 2

11

如果覆盖的属性数量很少,您可以只引用基本配置文件,然后-Dprop1=value为要自定义的每个属性使用符号。

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

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

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

它在大多数情况下都有效。

于 2013-08-05T21:29:04.260 回答