Relationship between root job and optimized job

IBM® InfoSphere® DataStage® maintains a relationship between a job, and any optimized versions of that job.

There is a two-way relationship between a job and any optimized versions of that job. When an optimized job is created, it is related to its root job, and the relationships can be queried in both directions. Starting from the root job, you can show the names of all its optimized jobs, and from an optimized job you can show the name of its root job.

You can compile and run the root job without the optimized versions being present, but if you perform a where used query on the root job, the query returns a list of optimized versions of that job. An optimized job requires the root job to be present only if you want to rerun the optimization, but a dependent of query on the optimized job includes the root job in its results.

You can edit an optimized job without destroying its relationship to the root job. However, any changes made to the optimized job will not be applied back to the root job, and are lost if the job is reoptimized. You can use the timestamp of the optimized job to detect if it has been modified since it was created from the root job.

The root job can also be edited while it has optimized jobs related to it. Changes to the root job do not automatically update the optimized jobs. Optimized jobs need to be regenerated to incorporate changes to the root job.

Even when related to a root job, an optimized job can be compiled, run, and deployed separately from the root job. The root job can also be compiled, run, and deployed separately if required.

You cannot open an optimized job and optimize it while it is still related to the root job.

You receive an impact analysis warning if you attempt to delete a root job or rename a root job while it is still related to optimized jobs. You do not receive a warning if you delete optimized jobs that are still related to their root job.