2015-02-05 2 views
0

다른 작업을 호출하는 Oozie 작업이 있습니다. 개별적으로 사용 중이므로 다른 작업으로 다시 작성하고 싶지 않습니다.Oozie 동작이 여러 동작을 가리킬 수 있습니까?

<action name="some action"> 
    <Go to action 1> 
    after action 1 go to action 2 
    <Go to action 2> 
</action> 

<action name="action 2"> 
     <sub-workflow> 
       <app-path>${SUB_APP_PATH}workflow_monthly.xml</app-path> 
     <propagate-configuration/> 

     </sub-workflow> 
    <ok to="end"/> 
    <error to="fail" /> 
</action> 

<action name="action 1"> 
     <sub-workflow> 
       <app-path>${SUB_APP_PATH}workflow_weekly.xml</app-path> 
     <propagate-configuration/> 

     </sub-workflow> 
    <ok to="end"/> 
    <error to="fail" /> 
</action> 

많은 도움을 준 문서 또는 지침입니다.

+0

당신은 귀하의 요구 사항에 좀 더 정교한 수 있습니까? –

+0

포크는 여러 작업을 병렬로 실행할 수 있습니다. 조건 노드를 사용하여 수표에 따라 다음 작업을 선택할 수 있습니다. –

답변

1

귀하의 질문에 확실하지 않으므로 다른 것이 었는지 알려주십시오.

Oozie는 하나의 동작을 가리키는 여러 동작을 방지합니다. 포크 다음에 join이 유일한 예외입니다. 나는 영리한 워크 플로우 디자인과 좋은 속성을 사용하여이 문제를 해결하려고 노력한다. 즉, weekly 또는 monthlyfrequency이라는 속성으로 작업에 전달한 다음 작업 1과 작업 2를 하나의 작업으로 바꿀 수있다.

<action name="action"> 
    <sub-workflow> 
      <app-path>${SUB_APP_PATH}workflow_${frequency}.xml</app-path> 
    <propagate-configuration/> 

    </sub-workflow> 
<ok to="end"/> 
<error to="fail" /> 

은 분명히 정확히 당신이 찾고있는 해결책은 아니지만, 내가 할 수 있었던 것이 가장 좋습니다. 왜 안 action-1some action 지점이 다음 action-2action 1 지점이 - 여담으로

, 나는 당신이 당신의 워크 플로우에서 일을하려고 정확히 무엇인지 정말 아니에요? 왜 some action으로 돌아가고 싶습니까? 포크를 찾으십니까? 이 경우 :

<fork name="fork-actions"> <!--this replaces `some-action`--> 
    <path start="action-1" /> 
    <path start="action-2" /> 
</fork> 
<join name="join-fork-actions" to="end" /> 

<action name="action-2"> 
    <sub-workflow> 
      <app-path>${SUB_APP_PATH}workflow_monthly.xml</app-path> 
    <propagate-configuration/> 

    </sub-workflow> 
<ok to="join-fork-actions"/> 
<error to="fail" /> 

<action name="action-1"> 
    <sub-workflow> 
      <app-path>${SUB_APP_PATH}workflow_weekly.xml</app-path> 
    <propagate-configuration/> 

    </sub-workflow> 
<ok to="join-fork-actions"/> 
<error to="fail" /> 

관련 문제