IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

Extended Format VSAM - Definition and Performance


IBM Mainframe Forums -> JCL & VSAM
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
n459760

New User


Joined: 13 Oct 2009
Posts: 8
Location: Albany,NY

PostPosted: Thu Jan 21, 2010 12:14 am
Reply with quote

Hi,

We have defined an SMS managed extended format VSAM dataset as follows:

DEFINE CLUSTER -
(NAME (AA.BBBB.CCCCDDDD.EEFFGG) -
VOLUME(* * * * *) -
CYL (3500 990) -
KEYS (20,0) -
MANAGEMENTCLASS(AABIG) DATACLASS(DCEXTEND) -
STORAGECLASS(BBBIG) -
RECORDSIZE (100 100) -
SHAREOPTIONS (1 3) REUSE -
FREESPACE (0,0)) -
DATA (NAME(AA.BBBB.CCCCDDDD.EEFFGG.DATA) -
CONTROLINTERVALSIZE (8192))-
INDEX (NAME(AA.BBBB.CCCCDDDD.EEFFGG.INDEX) -
CONTROLINTERVALSIZE (4096))

While accessing it in batch with SUBSYS=BLSR method we are generating high exception counts. "VSAM Demystified" does say that BLSR might not be perfect for extended format VSAM but rather we should use SMB - system managed buffering. I am reading the VSAM manual but information regarding how to go about it is scattered. I just want to gather from everyone's valuable experience some information/method to use SMB:
a. What changes do I need to do?
b. What are the additional parameters (if any) that I need to define? Are these parameters defined during file definition or in JCL.

Your inputs are appreciated!
Back to top
View user's profile Send private message
Robert Sample

Global Moderator


Joined: 06 Jun 2008
Posts: 8696
Location: Dubuque, Iowa, USA

PostPosted: Thu Jan 21, 2010 1:11 am
Reply with quote

Read VSAM Demystified starting with page 82. It talks about the specific changes required to use SMB.

Is the access sequential, mixed random and sequential, skip sequential, or random? BLSR, like CICS LSR pools, is pretty good at handling random access but performs poorly with sequential or nearly sequential access.
Back to top
View user's profile Send private message
Bill O'Boyle

CICS Moderator


Joined: 14 Jan 2008
Posts: 2501
Location: Atlanta, Georgia, USA

PostPosted: Thu Jan 21, 2010 3:07 am
Reply with quote

Are you adding to this file, either in Batch or CICS, because you've not specified any CI/CA Freespace percentage.

Also, based upon the RECORDSIZE and KEYLENGTH, the CISZ for both DATA and INDEX may not be as optimal as you'd think, which could cause high EXCP's, especially when there's a CI split or (worse case) a CA split, due to ZERO Freespace for both.

A review of this definition is in order.

Bill
Back to top
View user's profile Send private message
n459760

New User


Joined: 13 Oct 2009
Posts: 8
Location: Albany,NY

PostPosted: Thu Jan 21, 2010 7:25 pm
Reply with quote

Bill,
Thank you for your reply. The CISZ definitions have been modified but no freespaces was specified because this file is never updated in online or batch. Its a reference file will not undergo CI/CA splits. Its always deleted/defined and reloaded nightly.

After reading through VSAM Demystified, I came up with this definition of the file in JCL so that it can use SMB:

//DDNAMEA DD DSN=AA.BBBB.CCCCDDDD.EEFFGG,DISP=SHR,
// AMP=(‘RMODE31=BUFF’,’ACCBIAS=SYSTEM’)

I am just waiting on system folks to confirm changes to the extended format definition for RECORD_ACCESS_BIAS and STRIPING before I could begin testing. I will update my findings here.
Back to top
View user's profile Send private message
mftrigger

New User


Joined: 18 Feb 2006
Posts: 23
Location: chennai

PostPosted: Thu Jan 21, 2010 8:08 pm
Reply with quote

Halo n459760,

You say there is a very high EXCPs coz of this VSAM.

The basic procedure to be followed for VSAM tuning -
- Get the programs, having high EXCPs for this particular VSAM.
- Analyze how this VSAM and what for this VSAM is accessed in the program. (This includes usage mode - seq,random.. and hw it is opened - i, i-o,output).
- then decide on whether to code buffers or use BLSR, depending on the mode.
- Depending on specific cases, a lot of tuning could be done for VSAMs.
Back to top
View user's profile Send private message
n459760

New User


Joined: 13 Oct 2009
Posts: 8
Location: Albany,NY

PostPosted: Thu Jan 21, 2010 10:37 pm
Reply with quote

Thanks mftrigger for your comments.

BLSR is not recommended for extended format. We are working on tuning.
Thanks!
Back to top
View user's profile Send private message
Pete Wilson

Active Member


Joined: 31 Dec 2009
Posts: 580
Location: London

PostPosted: Mon Jan 25, 2010 3:52 pm
Reply with quote

For a Batch sequential load there is a very useful rule of thumb for buffering. This is 2 times the number of data CI's that fit into a track + 3 for your DATA buffers.
This will serve you quite well in most cases. You can specify the buffering on the JCL as per the following example for your 8192 data CISIZE:

// AMP=('AMORG,BUFND=16,BUFNI=3')

You can also set a BUFFERSPACE value on the define but this means the buffers are permanently allocated while the dataset is open rather than just for the load, and may not be compatible with the CICS LSR buffer arrangement.
Back to top
View user's profile Send private message
n459760

New User


Joined: 13 Oct 2009
Posts: 8
Location: Albany,NY

PostPosted: Tue Jan 26, 2010 7:29 pm
Reply with quote

Here is what we did:

Defined a new STORAGE CLASS with greater STRIPE count and a SDR (sustained data rate) of 21. We modified the JCL for the extended format dataset to be:

AMP=('ACCBIAS=SYSTEM','RMODE31=BUFF')

ACCBIAS = SYSTEM is used so that it used system managed buffering and RMODE31 = BUFF is used so that buffers above 16 MB line is used.

With this the performance has increased significantly.

Pete thank you for your comments. As earlier commented BLSR is not advised for extended formant so we used SMB.
Back to top
View user's profile Send private message
mftrigger

New User


Joined: 18 Feb 2006
Posts: 23
Location: chennai

PostPosted: Wed Jan 27, 2010 10:27 am
Reply with quote

n459760, Thanks for sharing the methodology you used.

I have a question related to this.

When i see the execution results in the SAR page of certain jobs, which uses VSAMs w/o buffers, I see there are system allocated buffers for these VSAMs.

So my Q is .. Is there any difference between the above mentioned SYSTEM buffers and the buffers i came across.

Note:
My assumption is these system buffering usage depends on the Default configuration setup in the respective mainframes.. Is my assumption rt ?
Back to top
View user's profile Send private message
n459760

New User


Joined: 13 Oct 2009
Posts: 8
Location: Albany,NY

PostPosted: Wed Jan 27, 2010 7:14 pm
Reply with quote

Hi mftrigger,
Your assumption is correct. If you do not specify BUFFERS in the jcl then the system allocates them based on their default definition in the ACS routines set up by system admin. This may vary based on installations and their definition.

Our need was to use an extended format VSAM and while reading through VSAM Demystified we came across and used options defined for extended format VSAM that gave us better results.
Back to top
View user's profile Send private message
mftrigger

New User


Joined: 18 Feb 2006
Posts: 23
Location: chennai

PostPosted: Thu Jan 28, 2010 10:23 am
Reply with quote

Thanks a lot for the clarification, n459760.

Have a fun-filled day!
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> JCL & VSAM

 


Similar Topics
Topic Forum Replies
No new posts Populate last day of the Month in MMD... SYNCSORT 2
No new posts Modifying Date Format Using DFSORT DFSORT/ICETOOL 9
No new posts Access to non cataloged VSAM file JCL & VSAM 18
No new posts Need to convert date format DFSORT/ICETOOL 20
No new posts Merge two VSAM KSDS files into third ... JCL & VSAM 6
Search our Forums:

Back to Top