2010-04-20 50 views
3

我正在使用Pentaho数据集成(aka Kettle),我有几个转换,我们称它们为A,B,C,D,E。 B依赖于A,D依赖于C和E取决于B和D.在工作中,我想平行运行A,B和C,D:等待转换作业

  -> A -> B _ 
    Start<   \ 
      -> C -> D----> E 

其中A和C并行运行。只有在B D成功时才有执行E的方法吗?现在,通过查看Job指标,只要B D完成,E就立即执行。

回答

0

我相信这可以做到,但我没有足够大的工作来真正测试这个好,而且很尴尬。基本上,除了你的A,B,C,D和E工作之外,你还需要4个独立的工作。我们称之为控制作业,作业A_B,作业C_D和并行作业。

你设置它们是这样的:

Control Job: start -> Parallel Jobs -> E 
Parallel Jobs:  -> Job A_B 
       start<   (Set Start step to run next jobs in parallel) 
        -> Job C_D 
Job A_B: start -> A -> B 
Job C_D: start -> C -> D 

的关键是,A - > B和C - > d需要在自己的作业步骤保留了依赖。然后并行作业确保两条平行路径都已完成,然后才允许控制继续执行E.