How to improve performance of this job?

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
mavrick21
Premium Member
Premium Member
Posts: 335
Joined: Sun Apr 23, 2006 11:25 pm

How to improve performance of this job?

Post by mavrick21 »

Hello,

We've a job as shown below

Code: Select all

                                                Hashed File
                                                   |
DRS (Source) -> IPC -> Row merger -> Trans1 ->  Trans2 -> Row splitter -> IPC -> Trans3 -> DRS (Target)

Source & target table is Oracle.

The DRS (source) contains roughly 9 million records and contains a select statement.

The reference Hashed file too contains roughly 9 million records. The hashed file details below -
Type 30 (64-bit)
1296359424 Jan 11 16:00 DATA.30
374102016 Jan 11 15:52 OVER.30

This job runs every night and the problem is it processes 10 rows/second and takes 1 hour 45 minutes to complete.

What I could analyze is, the extraction from source and lookup on Hashed file stage take a long time. Are there ways to improve the run time of this job by improving the lookup speed?

Please let me know if you require any more details.

Thanks.
Last edited by mavrick21 on Wed Jan 12, 2011 12:22 am, edited 1 time in total.
mavrick21
Premium Member
Premium Member
Posts: 335
Joined: Sun Apr 23, 2006 11:25 pm

Post by mavrick21 »

Just another thought/question

Does increasing the priority of this job allocate more CPU time(if any) to it? If yes then how can it be achieved?

Thanks.
Kirtikumar
Participant
Posts: 437
Joined: Fri Oct 15, 2004 6:13 am
Location: Pune, India

Post by Kirtikumar »

Are you sure it is not the DRS extraction? Have you tried running a simple job to extract from DRS and load in DRS and check how long are they taking?

when job is running, what are the CPU and memory stats of the server?
Regards,
S. Kirtikumar.
mavrick21
Premium Member
Premium Member
Posts: 335
Joined: Sun Apr 23, 2006 11:25 pm

Post by mavrick21 »

Kirtikumar,

I missed the long running extraction stage and I've included it in my original post.
BI-RMA
Premium Member
Premium Member
Posts: 463
Joined: Sun Nov 01, 2009 3:55 pm
Location: Hamburg

Re: How to improve performance of this job?

Post by BI-RMA »

Hi Mavrick21,

How fast can Oracle write the data from DRS (Source) to /dev/null? If the Select-Statement on Oracle is slow, there is no use in analysis of the overall job design.
"It is not the lucky ones are grateful.
There are the grateful those are happy." Francis Bacon
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

Best way to check that the target writes are not the issue, put an @FALSE constraint in the last transformer so nothing goes to the target.
-craig

"You can never have too many knives" -- Logan Nine Fingers
mavrick21
Premium Member
Premium Member
Posts: 335
Joined: Sun Apr 23, 2006 11:25 pm

Post by mavrick21 »

This is really strange! Yesterday night the job took 54 minutes to complete. It processed 2000 rows/second.

There has been no change in the job, the record count or the hardware. The database and DataStage engine are on the same box.

My thought is this job runs slow when CPU and memory are being utilized to the maximum due to other process. Yesterday night it might have run when CPU and memory were relatively free. Now how can I trace where the bottleneck is?

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

Post by ray.wurlod »

Unless someone was monitoring the system at the time, you can't. It's gone. It's history.
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