Hi,
Our job dependencies are something like:
Group1:
JobA
JobB
JobC
JobD
JobE
These jobs are all independent of each other, and I would prefer they run multi-threaded. But, they should all successfully complete before...
Group2:
JobF --> JobG --> JobH --> JobI
These jobs are all dependent on the success of the parent job (creation of surrogate keys). However, different jobs are dependent on jobs in Group1, for example:
JobF depends on A & C
JobG depends on B
JobH depends on all jobs
JobI depends on Job D & E
Once these jobs finish...
Group3:
JobJ
JobK
JobL
These jobs again are all independent of each other, but dependent on the successful run of all jobs in Group2. Again, I would like these jobs to run multi-threaded if possible.
What is the best practice approach for implementing these dependencies in a Job Sequence job? It would be nice if there was a "Container" in which I could drop each group of jobs, with a dependency of the container. But, I don't see this capability in the sequence jobs.
Thanks,
Scott
Implementing job dependencies in a sequence job
Moderators: chulett, rschirm, roy
-
- Participant
- Posts: 54607
- Joined: Wed Oct 23, 2002 10:52 pm
- Location: Sydney, Australia
- Contact:
-
- Participant
- Posts: 54607
- Joined: Wed Oct 23, 2002 10:52 pm
- Location: Sydney, Australia
- Contact:
Code: Select all
B --+
|
A --+ +--> G --+
| | | --> I
+--> F --+ D --+--> H --> J
| | --> K
C --+ E --+
Last edited by ray.wurlod on Thu Mar 12, 2009 2:51 am, edited 1 time in total.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
So I have to code all dependencies "manually". Bummer.
Was really hoping there was some way to:
* Run A-E concurrently
* Once A-E have finished successfully, run F->G->H->I sequentially
* Once I has finished successfully, run J-L concurrently
Thus the concept of "containers" to hold groups of jobs.
Oh well![Sad :(](./images/smilies/icon_sad.gif)
Was really hoping there was some way to:
* Run A-E concurrently
* Once A-E have finished successfully, run F->G->H->I sequentially
* Once I has finished successfully, run J-L concurrently
Thus the concept of "containers" to hold groups of jobs.
Oh well
![Sad :(](./images/smilies/icon_sad.gif)
-
- Participant
- Posts: 54607
- Joined: Wed Oct 23, 2002 10:52 pm
- Location: Sydney, Australia
- Contact:
Yes but that would take longer and introduce dependencies that don't actually exist, e.g. H depending on A.
Code: Select all
A --+
|
B --+
| --> J
C --+--> F --> G --> H --> I --> K
| --> L
D --+
|
E --+
Last edited by ray.wurlod on Thu Mar 12, 2009 2:56 am, edited 1 time in total.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
Your concept of "containers" can be implemented by using multiple job sequences.
Job Sequence 1: Run A-E concurrently
Job Sequence 2: F->G->H->I
Job Sequence 3: J-L concurrently
You then need a master job sequence to control the 3 job sequences above. This will have the three job sequences above sequentially linked together.
Job Sequence 1: Run A-E concurrently
Job Sequence 2: F->G->H->I
Job Sequence 3: J-L concurrently
You then need a master job sequence to control the 3 job sequences above. This will have the three job sequences above sequentially linked together.