gpt4 book ai didi

hadoop - 将可选属性从主 oozie 工作流传递到子工作流

转载 作者:可可西里 更新时间:2023-11-01 16:36:36 25 4
gpt4 key购买 nike

我有一个 HDFS_file_path 或属性需要从 workflow-1 传递到 common_subworkflow。

我还有没有该属性或 HDFS_file_path 的 workflow-2。但是 workflow-2 调用 common_subworkflow。

在 common_subworkflow 中,我使用 ${HDFS_file_path} 获取属性值。

当 workflow-1 调用 common_subworkflow 时工作正常,但当 workflow-2 调用 common_subworkflow 时失败,因为 HDFS_file_path 在 workflow-2 中不存在。

有什么办法可以

  1. 读取动态属性(如果存在),或者
    1. 如果变量不存在,设置一些默认值(null 或空)

最佳答案

<workflow-app name='hello-wf' xmlns="uri:oozie:workflow:0.4">
<parameters>
<property>
<name>inputDir</name>
</property>
<property>
<name>outputDir</name>
<value>out-dir</value>
</property>
</parameters>
...
<action name='firstjob'>
<map-reduce>
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<configuration>
<property>
<name>mapred.mapper.class</name>
<value>com.foo.FirstMapper</value>
</property>
<property>
<name>mapred.reducer.class</name>
<value>com.foo.FirstReducer</value>
</property>
<property>
<name>mapred.input.dir</name>
<value>${inputDir}</value>
</property>
<property>
<name>mapred.output.dir</name>
<value>${outputDir}</value>
</property>
</configuration>
</map-reduce>
<ok to='secondjob'/>
<error to='killcleanup'/>
</action>
...
</workflow-app>

在上面的示例中,如果未指定 inputDir,Oozie 将打印错误消息而不是提交作业。如果未指定 =outputDir=,Oozie 将使用默认值 out-dir。

取自https://oozie.apache.org/docs/3.3.1/WorkflowFunctionalSpec.html#a4.1_Workflow_Job_Properties_or_Parameters

关于hadoop - 将可选属性从主 oozie 工作流传递到子工作流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51332364/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com