IPC STAGE and Row Buffering

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
santoshkumar
Charter Member
Charter Member
Posts: 35
Joined: Sun Jan 16, 2005 8:39 am
Location: US

IPC STAGE and Row Buffering

Post by santoshkumar »

I have a few doubts about how Row Buffering and the IPC Stage works.
As i understand, the IPC stage can be used between two active stages, so that each stage will be executed as seperate process. However, how is the IPC stage related to the option of Inter Process Row Buffering.

Can someone please clarify how the following scenarios work


1) IPC stage introduced between two active stages with Row Buffering disabled

2) IPC stage introduced between two active stages with In Process Row Buffering option checked.

3) IPC stage introduced between two active stages with Inter Process Row Buffering option checked.

4) No IPC stage between two active stages and the Inter Process Row Buffering option checked.


Thanks in advance!
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

1) Simply does not work. IPC stage requires row buffering enabled.
2) The two active stages run in the same process, but rows are buffered so that the upstream stage can begin processing a row as soon as it has finished with its predecessor (rather than waiting for the row to pass right through the job).
3) The two active stages run in separate processes; data are passed from one to the other via row buffers in shared memory, owned/controlled by the IPC stage.
4) Same answer as for (2).
What is accomplished is called "pipeline parallelism". For more information read Chapter 2 of the Parallel Job Developer's Guide.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
Post Reply