Page 1 of 1

IMS DB performance issue

PostPosted: Thu Sep 27, 2007 11:04 pm
by Raja
Hi,

I am accessing a IMS DB which is having 24 segments.

Consider a situation in which i have accessed 10000 records in 5 mins, after the particular range of records the performance became very poor,the same program is taking minimum 5 hours to retrieve less than 100 records.

The problem is only for particular records.

can any body plz help me with this issue??????????

regards,
raja.

Re: IMS DB performance issue

PostPosted: Mon Oct 01, 2007 4:37 pm
by Raja
can any body help me with the above???? In what are the cases performance problem will come in IMS DB?????

Re: IMS DB performance issue

PostPosted: Mon Oct 01, 2007 6:30 pm
by Bitneuker
Explain how you are retrieving the segments. Post the calls and the path you use to get to the particular segments.

Re: IMS DB performance issue

PostPosted: Mon Oct 01, 2007 7:22 pm
by Raja
Call 'cbltdli' using GU
PCB
IO-area
SSA-

if success
perform para1 n times.
perform para2 n times.
perform para3 n times.

perform para23 n times.
ens-if

para1.
Call 'cbltdli' using GU
PCB
IO-area
SSA-


para2.

Call 'cbltdli' using GU
PCB
IO-area
SSA-


"
"
"
"
"
"
"
"
"

para23.

Call 'cbltdli' using GU
PCB
IO-area
SSA-

Thanks,
raja

Re: IMS DB performance issue

PostPosted: Mon Oct 01, 2007 7:32 pm
by Bitneuker
GU with a single SSA for a dependent segment (not root) results in a complete hierarchical walk through the database, each time starting from the first segment. It will read all segments top to bottom left to right until the SSA satisfies. I'm pretty sure the keys of the required segments are not in any (secondary) index. I assume after you retrieved a segment you want to retrieve the next segment meeting the SSA. First change your call to GN so it will not start from the beginning of the database all the time. If you know the key of the rootsegments you should perform a GU on that segment and with subsequent calls retrieve the desired segments. You may also issue a pathcall but it's all dependent on the hierarchy of your database.

In order to be able to really help we need the structure of your database, the processing sequence and the path.