Performance issue

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
bhaskarjha
Participant
Posts: 67
Joined: Thu Apr 06, 2006 7:13 am

Performance issue

Post by bhaskarjha »

Hi,
I am loading data to a table from a view which contains 13 lacs record. It took 13 hours to load the table. My design is very simple.
Source View----> Transformer------> Target table

Can you please let me help in increasing performance? The loading option for target is "clear the table then insert rows".
Thanks,
Bhaskar
Bhaskar Jha
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

If you select from a View, then the SELECT statement that defines that view must be executed first. One approach would be to pre-execute that original SELECT statement (perhaps in a DataStage job) capturing the result into a text file. You may well find that this is taking the bulk of the time - if you can "time shift" it to an earlier time, then the load itself may be able to proceed much faster.

How much work occurs in the Transformer stage? Have you used optimally efficient practices in the expressions in this stage?

Have you considered replacing your target table with a text file, and using that text file as the data file in a bulk loader?

Finally, if the source and target are in the same database, have you considered bypassing DataStage entirely and doing the whole thing with SQL?

Code: Select all

INSERT INTO target (column_list) SELECT ... FROM source...
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
bhaskarjha
Participant
Posts: 67
Joined: Thu Apr 06, 2006 7:13 am

Post by bhaskarjha »

How can I preexecute the select statement in Data Stage Job? I have executed the query in TOAD & getting the result.
Bhaskar Jha
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

Two separate jobs.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
bhaskarjha
Participant
Posts: 67
Joined: Thu Apr 06, 2006 7:13 am

Post by bhaskarjha »

Hello Ray,
That means I have to design two similar job. Then execute the first one & finally execute the second one.
Bhaskar Jha
chulett
Charter Member
Charter Member
Posts: 43085
Joined: Tue Nov 12, 2002 4:34 pm
Location: Denver, CO

Post by chulett »

One job to extract and another job (or jobs) to load.
-craig

"You can never have too many knives" -- Logan Nine Fingers
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

One job sequence to rule them all.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
manteena
Premium Member
Premium Member
Posts: 38
Joined: Thu Feb 10, 2005 1:43 pm
Location: USA

Post by manteena »

If you think loading (not extraction) is the problem, try to tune the table in the database increase commit level or something like that ..13lac recs are no biggy for DS should not take the time you specified.
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

It might, if there are lots of indexes and constraints to be checked on the target table. :cry:

But that's not a DataStage problem.
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