gpt4 book ai didi

xml - 如何使用具有不同参数列表的相同通用 workflow.xml fork 三个不同的作业?

转载 作者:可可西里 更新时间:2023-11-01 14:32:50 26 4
gpt4 key购买 nike

我是 hadoop 生态系统的初学者。我正在尝试 fork 三个不同的作业,我想从同一个通用 workflow.xml 文件调用这些作业,但将不同的参数传递给每个子工作流。

子工作流程:

<?xml version="1.0" encoding="UTF-8"?>
<workflow-app xmlns="uri:oozie:workflow:0.4" name="special-fork">

<global>
<job-tracker>${jT}</job-tracker>
<name-node>${nN}</name-node>
</global>

<fork name="special-fork">
<path start="aa"/>
<path start="bb"/>
<path start="cc"/>
</fork>

<action name="aa">
<sub-workflow>
<app-path>${nN}/xyz/workflow.xml</app-path>
<propagate-configuration/>
</sub-workflow>
<ok to="special-join"/>
<error to="kill"/>
</action>

<action name="bb">
<sub-workflow>
<app-path>${nN}/xyz/workflow.xml</app-path>
<propagate-configuration/>
</sub-workflow>
<ok to="special-join"/>
<error to="kill"/>
</action>

<action name="cc">
<sub-workflow>
<app-path>${nN}/xyz/workflow.xml</app-path>
<propagate-configuration/>
</sub-workflow>
<ok to="special-join"/>
<error to="kill"/>
</action>

<join name="special-join" to="end"/>

<action name="email-alert-fail">
<email xmlns="uri:oozie:email-action:0.1">
<to>${emailing_list}</to>
<subject>Oozie workflow Failed</subject>
<body>
</body>
</email>
<ok to="kill"/>
<error to="kill"/>
</action>

<kill name="kill">
<message>Map-Reduce Failed</message>
</kill>

<end name="end"/>
</workflow-app>

我想传递参数列表,例如 source、input_path、output_path、credentials,这与所有三个进程 aa、bb、cc 都不同。我如何将其传播到三个子工作流中的每一个?

谢谢。

最佳答案

您可以使用子工作流 Action 的configuration标签,并传递需要的参数。这就是它的样子:(添加所有必需的属性)

<action name="aa">
<sub-workflow>
<app-path>${nN}/xyz/workflow.xml</app-path>
<propagate-configuration/>
<configuration>
<property>
<name>input_path</name>
<value>your_input_path</value>
</property>
</configuration>
</sub-workflow>
<ok to="special-join"/>
<error to="kill"/>
</action>

关于xml - 如何使用具有不同参数列表的相同通用 workflow.xml fork 三个不同的作业?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39865573/

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