View previous topic :: View next topic
|
Author |
Message |
jones.jebaraj84
New User
Joined: 26 Nov 2008 Posts: 10 Location: India
|
|
|
|
Hi All,
I have a KSDS VSAM file with 16 digit key and record length 17500. when i am seaching for records in this file, the job runs more than 30 mins thus giving poor performance. I tried the Buffering parameters BUFND and BUFNI and was able to reduce the job run time to 13 mins. Is there any way i can still reduce the run time.
Which could be the optimum CI SIZE and other parameters i can use to get the optimum performance...
Thanks... |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
Quote: |
when i am seaching for records in this file, |
How many "hit" records are you searching for? If you are searching for a few records by key, the process should run in a few seconds.
How many records are in the file? Is it possible that your "search" must pass all of the records rather than accessing records directly? |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
Post a LISTCAT for the file. Are you searching with a program or utility? |
|
Back to top |
|
|
jones.jebaraj84
New User
Joined: 26 Nov 2008 Posts: 10 Location: India
|
|
|
|
My File has about 100 records with unique keys (16 digits). I have a main File which has about 10 million records. Each record in the Main file will have one match in my VSAM file (100 reocrds). |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
Your original post talks about slow search times for a VSAM file. Now you're talking about two VSAM files. Are you even sure you know what you're attempting to do? It's not clear on this end what you're asking.
And you've been asked to provide data which I'm not seeing. When you are searching, how are you searching -- language (or utility), access method, and other such information would be helpful (as in critical, as in don't give us something to understand your processing you're not likely to get any help). |
|
Back to top |
|
|
jones.jebaraj84
New User
Joined: 26 Nov 2008 Posts: 10 Location: India
|
|
|
|
Apoligize if i am not clear on my question.
Plesae find the details as below:
Main File (Non VSAM Flat file) - 10 million records (approx)
VSAM file - 100 records approx
Language : COBOL, JCL
My program takes one record from the Main file and froms a 16 digit key. This 16 digit key from the main file is matched with the VSAM key to find for a exact match. If the match is found that particular VSAM record is processed and output is written to a flat file.
I am in the process of improving performance of this program. Now the job runs 15 mins. And this is because for every instance in the main file a VSAM search is done in the VSAM file. there are many I/O operations taking place in this process. Is there any way i could minimise the time the job runs. |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
Load the VSAM records into a COBOL table. Use SEARCH ALL on the table. That cuts the VSAM file reads to a minimum -- once per record to load the table. |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello,
And when loading the vsam data into the cobol table/array, make sure the table is loaded in key sequence. . . |
|
Back to top |
|
|
jones.jebaraj84
New User
Joined: 26 Nov 2008 Posts: 10 Location: India
|
|
|
|
Thanks a lot... |
|
Back to top |
|
|
|