Active Vs Passive Stage

Post questions here relative to DataStage Server Edition for such areas as Server job design, DS Basic, Routines, Job Sequences, etc.

Moderators: chulett, rschirm, roy

Post Reply
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

Simplistically, an active stage is one that processes rows and has the capacity to change the data being processed, for example the Transformer, Aggregator, Pivot or Sort stage. A passive stage is one that connects to a persistent data store, either retrieving rows from or putting rows to that store; for example Sequential File, ODBC, RDBLoad or ORAOCI stage. There is a third type, "external"; the only example of an external stage type in server jobs is the FTP stage.
Only active stage types support before-stage and after-stage subroutines.

If you inspect stage type properties in the Repository browser (either in Manager or Designer), you can see whether any particular stage type is active, passive or external.

There are some exceptions, mainly for historical reasons; for example the ORABULK stage was written as an active stage so that one could use its after-stage subroutine to fire the sqlldr command.

There is, of course, an accurate technical definition, but you will need to know a lot more about how DataStage works "under the covers" for that to make sense.

Ray Wurlod
Education and Consulting Services
ABN 57 092 448 518
Post Reply