如何以特定频率强制协调器动作实现?
How to force coordinator action materialization at specific frequency?
我想知道是否 possible/how 强制协调器定期具体化或实例化工作流,即使之前实例化的工作流尚未完成。
让我解释一下:
我有一个简单的协调器,看起来像这样:
<coordinator-app name="myApp" frequency="${coord:hours(3)}" start="2015-01-01T0:00Z" end="2016-01-01T00:00Z" timezone="UTC" xmlns="uri:oozie:coordinator:0.4">
<action>
<workflow>
<app-path>${myPath}/workflow.xml</app-path>
</workflow>
</action>
</coordinator-app>
频率设置为3小时。每 3 小时,我希望协调员 "materialize" 一个新的工作流程 instance/job。
这是我的问题:当工作流执行持续超过 3 小时时,协调器不会实现新的工作流实例,而是等待当前 运行 工作流先完成。然后它将实例化下一个工作流。如果协调器启动的工作流持续时间超过频率,就会排队。
无论如何如何让协调器每 3 小时开始一个新工作?
谢谢
你应该使用 concurrency
属性。默认情况下它是一个,这就是为什么你有排队问题。将它设置为您认为合理的大小。
<coordinator-app name="[NAME]" frequency="[FREQUENCY]"
start="[DATETIME]" end="[DATETIME]" timezone="[TIMEZONE]"
xmlns="uri:oozie:coordinator:0.1">
<controls>
<concurrency>[CONCURRENCY]</concurrency>
</controls>
来自文档:
Concurrency: A coordinator job can specify the concurrency for its coordinator actions, this is, how many coordinator actions are allowed to run concurrently ( RUNNING status) before the coordinator engine starts throttling them.
我想知道是否 possible/how 强制协调器定期具体化或实例化工作流,即使之前实例化的工作流尚未完成。
让我解释一下: 我有一个简单的协调器,看起来像这样:
<coordinator-app name="myApp" frequency="${coord:hours(3)}" start="2015-01-01T0:00Z" end="2016-01-01T00:00Z" timezone="UTC" xmlns="uri:oozie:coordinator:0.4">
<action>
<workflow>
<app-path>${myPath}/workflow.xml</app-path>
</workflow>
</action>
</coordinator-app>
频率设置为3小时。每 3 小时,我希望协调员 "materialize" 一个新的工作流程 instance/job。
这是我的问题:当工作流执行持续超过 3 小时时,协调器不会实现新的工作流实例,而是等待当前 运行 工作流先完成。然后它将实例化下一个工作流。如果协调器启动的工作流持续时间超过频率,就会排队。
无论如何如何让协调器每 3 小时开始一个新工作? 谢谢
你应该使用 concurrency
属性。默认情况下它是一个,这就是为什么你有排队问题。将它设置为您认为合理的大小。
<coordinator-app name="[NAME]" frequency="[FREQUENCY]"
start="[DATETIME]" end="[DATETIME]" timezone="[TIMEZONE]"
xmlns="uri:oozie:coordinator:0.1">
<controls>
<concurrency>[CONCURRENCY]</concurrency>
</controls>
来自文档:
Concurrency: A coordinator job can specify the concurrency for its coordinator actions, this is, how many coordinator actions are allowed to run concurrently ( RUNNING status) before the coordinator engine starts throttling them.