IPC Stage vs Row Buffering:

A forum for discussing DataStage<sup>®</sup> basics. If you're not sure where your question goes, start here.

Moderators: chulett, rschirm, roy

Post Reply
prasadnittala
Participant
Posts: 4
Joined: Mon Sep 11, 2006 10:47 am

IPC Stage vs Row Buffering:

Post by prasadnittala »

I noticed recently in one of the projects, the developers have extensively used the IPC stage.

But in I think, this stage may create some problems in production where the system normally waits for the arrival of source files. The default timeout for IPC is 10secs. But if there is little delay in the arrival/consumption of the files the IPC stage causes the job to abort. (becuase of the time stipulation).

For the other cases also, we can "Enable the Row Buffering" and achieve the same performance, I believe.

Now Can anybody pls tell me where we need this IPC Stage exactly and what makes it different from row buffering option?
prasad
DSguru2B
Charter Member
Charter Member
Posts: 6854
Joined: Wed Feb 09, 2005 3:44 pm
Location: Houston, TX

Post by DSguru2B »

An IPC stage can be used in between two active stages.
Row-buffering are of two types, in process and inter process.
The following is directly out of ds developer's help

In process. You can improve the performance of most DataStage jobs by turning in-process row buffering on and recompiling the job. This allows connected active stages to pass data via buffers rather than row by row.

Inter process. Use this if you are running server jobs on an SMP parallel system. This enables the job to run using a separate process for each active stage, which will run simultaneously on a separate processor



If no IPC stage is provided between say two transformers, the DSEngine implicitly puts an IPC stage in between.
Creativity is allowing yourself to make mistakes. Art is knowing which ones to keep.
kumar_s
Charter Member
Charter Member
Posts: 5245
Joined: Thu Jun 16, 2005 11:00 pm

Post by kumar_s »

The tiemout setting is configurable. IPC is used between stages where the link buffering is required and happens to only that stage.
Where as the link buffering option can be enabled at job level or at project level. Which will reflect to all the links available in the job.
Impossible doesn't mean 'it is not possible' actually means... 'NOBODY HAS DONE IT SO FAR'
Post Reply