VSAM To OSAM PDF
VSAM To OSAM PDF
VSAM To OSAM PDF
Mark Henderson
CA
1
Session K10
How to Tell if Your Database is
Getting Full and What Are Your
Options if it is?
Mark Henderson
CA
mark.henderson@ca.com
2
Session aims
• How to detect whether you have a problem with
database space
3
Database space components
• RBA
• High-used RBA
• High-allocated RBA
• Bitmap
• CI/CA splits
• Allocation parms
• Volume(s)
4
Database space components
• RBA – relative byte address
Permits 4G or 8G of addressing
5
Database space components
• High-used RBA
6
Database space components
• High-allocated RBA
7
Database space components
• Bitmap
8
Database space components
• CI/CA splits
9
Database space components
• Allocation parms – primary & secondary extents
10
10
Database space components
• Volume(s)
11
11
An example
Let’s imagine an OSAM database
Blocksize of 27,998
Tracksize of 56,664
Defined with SPACE=(TRK,(1000,600))
Allocated on a single volume
Two extents have been taken
400 tracks of the secondary allocation are in use
12
12
An example
1. High-allocated RBA of
(1000+600)*56K = X’00578000’
2. High-used RBA of
(1000+400)*56K = X’004C9000’
13
13
Why should we worry ?
• Are we close to exceeding the maximum RBA?
• Are we close to taking another extent ?
• If we take another extent are we going to exceed the
maximum number of extents ?
• Are we close to 64k tracks on a volume ?
• Does the volume contain a free extent large enough to allow
us to take another ? Remember, VSAM always takes a
primary extent as its first extent on a volume.
• Is another volume available ?
14
14
In our example….
• No worry on RBA– X’004C9000’ is well below
X’FFFFFFFF’ maximum
• No worry on existing extent - 200 tracks left
• No worry on the number of extents taken
• Maybe worry as to whether volume has 600
contiguous free tracks ?
• Maybe worry - if the volume doesn’t have 600
contiguous free tracks – no alternative volume
15
15
How to deal with the general subject
• All of the information is available but it has to be
gleaned from many places
16
16
Difficulties in dealing with the subject
• Write your own utility – unlikely
• Need a system-wide picture - pointer checkers
execute at the database level
• Need a cheap solution - pointer checkers can take
a while to execute
• Need current information – due to online systems
pointer checkers may not see the current picture
17
17
Database Space Analyzer (DSA)
• Batch utility free with CA’s Database Analyzer
• Uses RECONs to populate threshold PDS
• Checks the databases in an IMS/DC region
• Collects some of its data from online control blocks
to provide an up-to-the-minute picture
• Collects the rest of its data from the catalog or the
VTOC
18
18
Database Space Analyzer (DSA)
• Thresholds are applied to each database
• Report produced
19
19
Database Space Analyzer (DSA)
• ALCUSED – % of used space to allocated space
• PCTMAX - % of used space to theoretical limit
• XTAVAIL - # available extents to hold sec alloc
• XTOSAM - # extents in use by OSAM database
• XTVSAM - # extents in use by VSAM database
• CASPLIT - % of CA splits
• CISPLIT - % of CI splits
20
20
Database Space Analyzer (DSA)
DSA0400E 150 DATASETS HAD THRESHOLD EXCEPTIONS.
DSA0401I SUMMARY OF DSN THRESHOLDS EXCEEDED
Number of extents, OSAM : 3
Number of extents, VSAM : 0
Number of available extents : 26
Allocation used (percent) : 140
Percent max theoretical size : 0
Percent CI splits : 2
Percent CA splits : 1
** Total number of exceptions : 172
21
21
Database Space Analyzer (DSA)
A Ending Total Alloc (Cyl)
DBDname DDname DBtype M Data Set Name Volser Cyls Ext Prmry Scdry Threshold Exception(s)
--------------------------------------------------------------------------------------------------------------------------------
DVAS8410 VAS08410 INDEX K TST.HPO.XCF1.DVAS8410.IX IDI002 50 1 50 0 Avl xtnts= 0, Threshold= 3
CI splits= 31% Threshold= 20
CA splits= 50% Threshold= 35
DSADB003 DSADB03D INDEX K IDI.SYSTEST.DSADB003 IDI127 3 1 3 0 Avl xtnts= 0, Threshold= 3
Alloc Used= 33% Threshold= 20
D17 MARKHI1A PHIDAM O IDI.SYSTEST.XCF1.D17.DATABASE.A00001 RJC004 22 22 1 1 Extents= 22, Threshold= 5
Alloc Used= 97% Threshold= 21
D17 MARKHI2A PHIDAM O IDI.SYSTEST.XCF1.D17.DATABASE.A00002 RJC005 22 22 1 1 Extents= 22, Threshold= 5
Alloc Used= 97% Threshold= 21
D17 MARKHI3A PHIDAM O IDI.SYSTEST.XCF1.D17.DATABASE.A00003 RJC002 22 22 1 1 Extents= 22, Threshold= 5
22
22
Database Space Analyzer (DSA)
• For all datasets whose ALCUSED is exceeded
space simulation occurs:
23
23
Database Space Analyzer (DSA)
<-- Threshold --> <- Simulation -
C C P E X A P E V O
I A C X T L C X O V
T T A C T T L E
S S E V E R
P P M N A U M N S 6
A L L A T I S A T P 4
DBDname DDname DBtype M T T X S L D X S C K Data set name
--------------------------------------------------------------------------------------------------------------------------------
D18 D18P05L ILDS K * IDI.SYSTEST.XCF1.P1EPT05.L00005
D18P12X PHINDX K * * * IDI.SYSTEST.XCF1.P1EPT12.X00012
D18P15L ILDS K * * * IDI.SYSTEST.XCF1.P1EPT15.L00015
24
24
Large Database Alternatives
• Note, even if you’re not close to the 4G/8G limit you should
still consider these suggestions.
• LFD ?
25
25
Large Database Alternatives
• Per Bill Keene of NESI in his excellent white paper
titled “Large Database Alternatives”:
http://www.neonesoft.com/resources_whitepapers.html
26
26
Large Database Alternatives
Database purging
• Write a program to purge or archive old data.
• Less DASD, less admin overhead, increased
availability, no application or JCL changes,
greater database longevity.
• Only cost is in coding the program.
27
27
Large Database Alternatives
Convert VSAM databases to OSAM
• Double the capacity
• Better performance, increased availability, no
application or JCL changes, greater database
longevity.
• Must change DBD, reregister database in DBRC,
buffer pool specifications, dataset allocation
procedures.
28
28
Large Database Alternatives
Multiple Dataset Groups
• Up to 10 DSGs permitted
• Increased addressing, no application changes,
performance improvements if done correctly.
• DBD changes, multiple I/O operations needed for
record retrieval, dataset allocation procedures,
DFSMDA members or JCL changes, backup
procedures.
29
29
Large Database Alternatives
Segment compression
• DBD-based
• Less space, no application or JCL changes, less
admin overhead, possible I/O improvements.
• Extra CPU, possible increase in I/O due to
separated prefix & data, possible increase in
logging data.
30
30
Large Database Alternatives
Convert to DEDB
• Permits 2,048 areas of 4G each
• Increased addressing
• Different philosophy, application changes, no DL/I
support, no indexing, no logical relationships.
31
31
Large Database Alternatives
Database partitioning
• HALDB or PDF from NESI
• Increased addressing, few (if any) application
changes, increased availability, easier admin in
terms of manageability, more flexible.
• DBD changes, more admin in terms of setup,
DBRC requirements.
32
32
Large Database Alternatives
Recommendations
1. Purge or archive old data
2. Implement segment edit/compression where
suitable
3. Implement partitioning
33
33
CI/CA splits
• Repro index to work file and back again
34
34
Too many extents
• Reorganize database changing primary &
secondary space allocations
35
35
Volume-type issues
• Clear up volume(s)
36
36
Any questions ?
37
37