Upload
pavanrajhr
View
89
Download
2
Embed Size (px)
DESCRIPTION
VSAM- Basic Concepts
Citation preview
1z/OS VSAM Concepts
2Sessions Outline - Day 3 Session 1 : Introduction to VSAM
Session 2 : Structure of VSAM Datasets
Session 3 : Access Method Services
Session 4 : Demo/Exercise Discussion
3Objectives
Familiarization with
VSAM concepts
Space Allocation and types of data sets supported by VSAM
VSAM Characteristics
Identify the general uses for Access Method Services
4Introduction to VSAM (Virtual Storage Access Method)
Session 1
5Topics Covered VSAM Basics
VSAM Dataset Organization
6What is VSAM? VSAM is a high-performance access method used in OS/390, MVS/ESA
and z/OS operating systems
Used as a Dataset in conjunction with programming languages (COBOL or PL/I) to create Applications
Used by CICS to store and retrieve data
Not a database management system does not provide a relationship among data (such as DB2 or IMS)
7VSAM Characteristics VSAM supports three types of data access: Sequential, Random (also
called Direct access) and Skip Sequential
Protection of data against unauthorized access is an inherent part of VSAM
Easily portable to AS/400, the PC or non-IBM computers (cross system compatibility)
A format for storing data independently of the type of direct access storage device on which it is stored
8VSAM Characteristics (Contd.) Options for optimizing performance
A multifunction service program (Access Method Services - IDCAMS) for setting up catalog records and maintaining data sets
Transactional VSAM - allows VSAM data set sharing in batch/online and batch/batch environments
9VSAM Dataset Organizations
ESDS Entry Sequenced Data Set
KSDS Key Sequenced Data Set
RRDS (Fixed Length) Relative Record Data Set
VRRDS Variable Length Relative Record Data Set
LDS Linear Data Set
10
NON-VSAM Access Methods
BSAM : Basic Sequential Access Method
QSAM : Queued Sequential Access Method
ISAM : Indexed Sequential Access Method
BDAM : Basic Direct Access Method
11
Similarities between VSAM & NON-VSAM Datasets
VSAM type Similar to
KSDS ISAM
ESDS BSAM/QSAM
RRDS BDAM
12
VSAM Dataset Organization
13
Topics Covered VSAM Catalog Structure
VSAM Terminology
VSAM Record Storage Control Intervals and Control Areas
14
VSAM Terminology
Catalog Management
Logical Record
Key Field
Physical Record
Cluster
Sphere
Index component
Record management
Data component
Master/User Catalog
Data Space
Control Interval and Control Area
Alternate Indexes
Spanned Records
15
Catalog Management
VSAM maintains extensive information about data sets and direct access
storage space in an integrated catalog facility (ICF) catalog.
The catalogs collection of information about a data set defines that data
sets characteristics. All VSAM files
must be defined in an ICF catalog.
16
Record Management
The record management part of VSAM contains the access method code.
17
Logical record
Unit of information used to store data in a VSAM data set.
Set of bytes containing a logical description of an item processed
by an application program.
A logical record can be of a fixed size or a variable size depending on the
business requirements.
18
Key field
Identifies the item associated with the logical record.
Important Field whose contents can be used to retrieve the specific logical
record
19
Physical record
The data is usually a set of logical records (packed together) transferred from or to memory by just one Read or Write CCW. The access method uses the BLKSIZE parameter to determine the length of the physical record. A large block size results in fewer gaps in the track but larger buffer in memory to keep the data.
A physical record is device dependent, its size is calculated at the time the data set is defined.
All physical records have the same length.
20
Cluster
Collection of physical datasets that make up one logical data set.
Consists of Data Component or Data Component & Index Component
21
Sphere A sphere is a base VSAM cluster and its associated clusters.
These associated clusters are the alternate indexes (AIXs) of the base cluster.
22
Data and Index Component
A component is an individual part of a VSAM data set. Each component has a name, an entry in the catalog and an entry in the VTOC.
The KSDS and VRRDS organizations have data and index components. ESDS, RRDS and LDS organizations only have data components.
The data component is the part of a VSAM data set, alternate index, or catalog that contains the data records.
Using the Index component VSAM is able to randomly retrieve a record from the data component when a request is made for a record with a certain key. The key determines the records position in the data set.
23
Control Interval and Control Area It is the fundamental building block of every VSAM file.A CI is a contiguous
area of direct access storage that VSAM uses to store data records and control information that describes the records.
A CI is the unit of information that VSAM transfers between the storage device and the process or during one I/O operation. Whenever a record is retrieved from direct access storage, the entire CI containing the record is read into a VSAM I/O buffer in virtual storage. The desired record is transferred from the VSAM buffer to a user-defined buffer or work area.
A CA is formed by two or more CIs put together into fixed-length contiguous areas of direct access storage. A VSAM data set is composed of one or more CAs. CAs are needed to implement the concept of splits. The size of a VSAM file is always a multiple of its CA. VSAM files are extended in units of CAs. A spanned record cannot be larger than a CA.
24
Alternate Indexes
Alternate indexes (AIXs) allows logical records of a KSDS or of an ESDS to
be accessed sequentially and directly by more than one key field.
AIXs eliminate the need to store the same data in different sequences in
multiple data sets for the purposes of various applications. Each alternate
index is a KSDS cluster consisting of an index component and a data
component.
25
Spanned Records Spanned records are needed when the application requires very long logical
records. A spanned record may be the data component of an AIX cluster. If spanned records are used for KSDS, the primary key must be within the first control interval.
Spanned records are logical records that are larger than the CI size. To have spanned records, the file must be defined with the SPANNED attribute at the time it is created. Spanned records are allowed to extend across or span control interval boundaries.
A spanned record must always begin on a control interval boundary and fills one or more control intervals within a single control area. A spanned record cannot share the CI with any other records.
26
Control Intervals and Control Areas
27
Control Interval VSAM Basic unit of work the minimum amount of data that is transferred
via buffers, between DASD and Main Memory
VSAM determines the size of the physical Record (BLOCK) based on CI Size
The CI size can be from 512 byes to 32 KB
28
Control Interval & Control Area CA is a fixed length area of auxiliary storage space in which VSAM stores
records
Logical records of a VSAM dataset are grouped into a number of CIs.
CIs of a dataset are grouped into one or more CAs
The size of a VSAM file is always a multiple of its CA
29
General format of a Control Interval
30
Format of Data Control Interval
Record1 Record2 Record3 Free Space (FSPC)
Logical Record Area (LRA)Unused Space
Control Information Field
CISZ
US CIF
31
Control Information Field of a CICIF consists of two subfields: Control Information Definition Field (CIDF)
It is a 4 byte field Contains the Offset and Amount of Free space
Record Definition Field (RDF) It is a 3-byte field. Length of records (based on the spread of data) Number of adjacent records that are of same length
32
Control Information Fields in a CI
Record Type Number of Records/CI Control Information (bytes)
Fixed Length Multiple 10
Fixed Length 1 7
Variable Length Depends on the spread of records
4 (CIDF) and 3 (RDF)
33
CISZ (CI Size) an example How many 80 byte Fixed Length recs can be fit in a CISZ(4096) of
Freespace(20,10) ?
Solution:
40 records of 80 byte record lengthSpace utilized = 40*80 = 3200 bytes US67 bytes
CIF10 bytes
FSPC(4096*0.20) 819 bytes
Unused space = 4096 3200 819 10 = 67
Logical Record Area (LRA)
34
Inserting a record in a CI
11111
Before Inserting:
US CIF
New Record with key 44444
22222 55555 (FSPC)
After Inserting:
US CIF11111 22222 44444 55555 (FSPC)
New record
35
Control Interval Split
Before CI Split:New Record with key 33333
11111 US CIF
US CIF(FSPC)
CI-1
CI-2
22222 44444 55555 66666
After CI Split:
US CIF
US CIF
CI-1
CI-2
11111 22222 33333
44444 55555 66666
(FSPC)
(FSPC)
36
Format of Index Control Interval
Header Entry1 Entry2 Entryn
Control Information Field
KSDS Control Interval
CIF
37
Structure of VSAM Datasets
Session 2
38
Topics Covered Types of VSAM Datasets
More on KSDS Index Structure
39
Objective
Understand the types and internal organization of VSAM datasets
Identify appropriate applications for VSAM data sets
Understand KSDS Index Search Techniques
40
Types of VSAM Datasets
41
VSAM Datasets Types
Entry Sequenced Data Set (ESDS)
Relative Record Data Set (RRDS)
Key Sequenced Data Set (KSDS)
Variable Length Relative Record Data Set (VRRDS)
Linear Data Set (LDS)
42
ESDS CA Structure
43
COBOL example ESDS data set
SELECT ASSIGN TO ORGANIZATION IS SEQUENTIALACCESS MODE IS SEQUENTIALFILE STATUS IS STATUS-KEY
44
RRDS Structure
45
COBOL example - Sequential Retrieval
SELECT ASSIGN TO ORGANIZATION IS RELATIVEACCESS IS SEQUENTIALRELATIVE KEY IS RR-NUMBER
46
COBOL example - Direct Retrieval
SELECT ASSIGN TO ORGANIZATION IS RELATIVEACCESS IS RANDOMRELATIVE KEY IS RR-NUMBER.
47
KSDS Structure
48
COBOL example - Sequential Retrieval
SELECT ASSIGN TO ORGANIZATION IS INDEXEDACCESS IS SEQUENTIALRECORD-KEY IS EMP-NUMFILE-STATUS IS STATUS-KEY.
49
COBOL example - Direct Retrieval
SELECT ASSIGN TO ORGANIZATION IS INDEXEDACCESS IS RANDOMRECORD-KEY IS EMP-NUMFILE-STATUS IS STATUS-KEY.
50
LDS Structure
51
Comparison of VSAM DS
52
Comparison of VSAM DS (Contd.)
53
More on KSDS Index Structure
54
KSDS Structure
55
General Format of Index Set
56
General format of Sequence Set
57
Index Search Techniques
Horizontal Search
For a Sequential Search, search is performed with the key value less than or equal to the sequence set record
Vertical Search
For a Random Access, search is performed from the Index set
Once the key
58
Example-1How Index & Sequence Sets work
59
Example-2Data Component Structure
Data Records
60
Example-2 (Contd.) Data Component Structure
Index Set Record
61
Share option in VSAM
Share option in VSAM is defined as Concurrent Usage of Dataset by several People at the same time. We can use this option for sharing the files in the same region and in other system. The SHAREOPTION has two parameters, the inter-system parameter and intra-system parameter.
Syntax:SHAREOPTIONS(crossregion,crossystem)
62
Share option cont:.... If the source data set is allocated with DISP=SHR, there is a risk that it could be updated by a region other than the FOR. If this happened, the data table would no longer match the source data set. To minimize this risk, the VSAM cross-region SHAREOPTION should be set to 1 or 2. 1 means that either one region can have update access to the data set or many regions can have read-only access. 2 means that one region can have update access to the data set and, at the same time, many regions can have read-only access.
Regardless of the setting of DISP, a warning message is issued if the cross-region SHAREOPTION is 3 or 4, or if it is 2 but the CICS-maintained data table has read-only access (which means another region might be able to update the data set).
63
Syntax and attributes
64
Access Method Services
Session 3
65
Topics Covered
Introduction to IDCAMS
IDCAMS Commands
Define and Load a VSAM dataset
VSAM Advanced Topics
66
Objectives
Use Access Method Services (AMS )
Identify some useful AMS Commands
Define and Load a Basic Cluster with IDCAMS
Define and Build Alternate Index
67
Introduction to IDCAMS
68
IDCAMS Utility
Multifunction utility program supplied with VSAM (IDCAMS) to manage
and maintain datasets
69
IDCAMS Features
IDCAMS can be used to Define, Alter and Delete datasets and allocate space for them List and Maintain VSAM Catalogs Load, Print and Copy datasets Reorganize datasets Define and build alternate indexes Facilitate backup and recovery Provide security and integrity functions
70
Invoking IDCAMS
//YOURJOB JOB (ACCT),'IDCAMS JOB',//STEP1 EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=*//SYSIN DD *AMS commands and their parameters/*
1. As a Job or Job step Example
71
Invoking IDCAMS (Contd.)2. TSO can be used with VSAM and access method services to
Execute access method services commands Execute a program to call access method services
3. From an application Program
72
IDCAMS Commands
73
COMMANDS
Modal Commands Used to control execution and establish options Modal commands allow the conditional execution of functional
commands.
Functional Commands Used to invoke access method services
74
COMMANDS (Contd..1)
COMMAND specifies the type of service requested
Default statement margins are positions 2 through 72.
Command stmt can be continued to the next line with - as the last parameter
Comment may be embedded in Command statements between /* and */
75
COMMANDS (Contd..2)
76
Condition Codes
IDCAMS returns a condition code following the execution of each Command
Can be used to selectively execute or skip subsequent commands
Initialized to zero at the start of the execution
77
Condition Codes (Contd..1)
LASTCC - specifies the condition code value that resulted from the immediately preceding function command
MAXCC - specifies the maximum condition code value that has been established by any previous function command
78
Condition Codes (Contd..2)
Code Explanation 0 Function executed successfully
4 Some problem was met in executing the function but it waspossible to continue. The continuation might not provideexact results, but no permanent harm will have been done
79
Condition Codes (Contd..3)Code Explanation8 A requested function was completed but major specifications
were unavoidably bypassed
12 The requested function could not be performed, as a result of a logical error
16 A severe error occurred that caused the Job Step to terminate
80
Modal Commands
IF-THEN-ELSE :
Used to control command execution on the basis of condition codes
DO-END :
Used to specify the group of commands as a single unit
81
Modal Commands (Contd.)NULL : Used to indicate that no action is to be taken
PARM : Specifies processing options to be used during execution
SET : Used to change or reset a previously defined condition code
82
Modal Commands - Syntax
IF {LASTCC|MAXCC} {operator} {numeric value}THEN {command }
DO{command set}
ENDELSE {command}
DO{command set}
END
83
Functional Commands
DEFINE Used to define the following objects Alias Alternate index Cluster Dataspace User Catalog and Master Catalog Path Catalog entry for a Generation Data Group Catalog entry for a non-VSAM dataset
84
Functional Commands (Contd..1) DELETE Used to delete catalogs, VSAM and non-VSAM datasets
EXAMINE Analyzes and reports on the structural consistency of the index component and/or data component of KSDS cluster
LISTCAT Used to list catalog entries
85
Functional Commands (Contd..2)
IMPORT Connects user catalogs and imports VSAM datasets
EXPORT Disconnects user catalogs and exports VSAM datasets.
PRINT Used to print VSAM and non-VSAM datasets and catalogs
86
Functional Commands (Contd..3)
ALTER - Used to alter attributes of datasets and catalog that have already been defined
Alter
Freespace
Volume
Prevent temporary updates to a VSAM dataset
87
Functional Commands (Contd..4)
BLDINDEX - Builds alternate indexes for existing datasets
Keys will be actually built from the base cluster with the BLDINDEX command
VERIFY : Used to cause a catalog to correctly reflect the end of a dataset after an error occurred in closing a VSAM dataset. The error may have caused the catalog to be incorrect.
88
Functional Commands (Contd..5)
REPRO
Loads an empty VSAM cluster with records
Creates backup of a VSAM dataset on a sequential dataset and restores the
dataset
Merges data from two VSAM datasets
89
Example: Modal & Functional Commands//JOBNAME JOB ...//STEP1 EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=*//SYSIN DD *DEFINE CLUSTER -IF LASTCC = 0 THEN -REPRO -ELSE -DOSET LASTCC = 0DELETE CLUSTER ...DEFINE CLUSTER ...END/*
90
Define and Load a VSAM Dataset
91
DEFINE CLUSTER The DEFINE CLUSTER command can be used to define a cluster and
specify attributes for the cluster as a whole and for the components of the cluster. The general format is :
92
DEFINE CLUSTER example//JOB1 JOB CLASS=A//DEFINE EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=*//SYSIN DD *DEFINE CLUSTER -(NAME(TRGXXX.MAST.CLUSTER) -TRACKS(51) -CONTROLINTERVALSIZE(4096) -INDEXED -VOLUMES(TRG001) KEYS(6,0) -FREESPACE(10,10) -DATA -(NAME(TRGXXX.MASTER.DATA) -TRACKS(21) -RECORDSIZE(200 200)) -INDEX -(NAME(TRGXXX.MASTER.INDEX) -IMBED)./*
93
LISTCAT
The LISTCAT command lists catalog entries.
Freespace, CI/CA split, Data Attributes, Statistics. Allocation information
All parameters of the LISTCAT command are optional
LISTCAT can be used under TSO
94
LISTCAT Syntax
LISTCAT ALIAS | ALTERNATEINDEX |
CLUSTER | NONVSAM | PATH | ENTRIES(entryname/password entryname/password..) |
LEVEL(level)
EXPIRATION(days)
NAME | HISTORY | VOLUME|
ALLOCATION | ALL
OUTFILE(ddname)
95
LISTCAT example//JOBTRGXX ...//LISTCAT1 EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=A//SYSIN DD *LISTCAT -ENTRIES(TRGXXX.MAST.CLUSTER) -CLUSTER -ALL/*
96
REPRO The REPRO command copies VSAM and non-VSAM data sets, copies
catalogs.
97
REPRO SyntaxREPRO {INFILE(ddname)/password INDATASET(entryname)/password {OUTFILLE(ddname/passwordOUTDATASET(entryname/password}( CHARACTER | DUMP | HEX )( FROMKEY(key) | ( FROMADDRESS(address) |( FROMNUMBER(number) )SKIP(number) ( TOKEY(key) |TOADDRESS(address) |TONUMBER(number) )COUNT(Number)
98
REPRO example
//JOBTRGXX ...//STEP1 EXEC PGM=IDCAMS//INPUTDD DD DSN=TRGXXX.DATA.RECORDS,DISP=OLD//SYSPRINT DD SYSOUT=A//SYSIN DD *REPRO -INFILE(INPUTDD) -OUTDATASET(TRGXXX.KSDS.CLUSTER)/*
Example: Load VSAM KSDS from Non-VSAM dataset and copy selected records to an ESDS
99
DELETE The DELETE command deletes catalogs, VSAM datasets, non-VSAM
datasets and objects.
100
DELETE Command Syntax
DELETE (entryname/password entryname/password..)ALIAS | ALTERNATEINDEX | CLUSTER | NONVSAM |PATH | USERCATALOG ERASE | NOERASEPURGE| NOPURGEFORCE | NOFORCE
101
DELETE example
//DELMAST EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=A//SYSIN DD *DELETE -(TRGXXX.MAST.CLUSTER -TRGXXX.TEST.DATA) -FILE(DD1) -PURGE -ERASE/*
102
PRINT: The PRINT command prints VSAM datasets, non-VSAM datasets, and catalogs. The syntax is:
103
PRINT SyntaxPRINT {INFILE(ddname /password )INDATASET(entryname /password ) }CHARACTER| DUMP | HEXFROMKEY(key) | FROMADDRESS(address) | FROMNUMBER(number) }SKIP(number) OUTFILE(ddname) TOKEY(key) |TOADDRESS(address) |TONUMBER(number)|COUNT(Number)
104
PRINT example//JOBTRGXX ...//DEFAIX EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=A//SYSIN DD *PRINT -INDATASET(TRGXXX.MAST.CLUSTER) -FROMKEY(E00001) -COUNT(100)/*
105
VERIFY The VERIFY command causes a catalog to correctly reflect the end of a
VSAM data set after an error occurs while closing a VSAM data set
The syntax is:VERIFY {FILE(ddname/password) |DATASET(entryname/password)}
106
VERIFY ExampleExample of a typical VERIFY usage Job TRGJJJJ has terminated abnormally and VSAM dataset
TRGXXX.MAST.CLUSTER is not closed correctly. This job is followed by another job that uses this file for an IDCAMS copy. Following are the set of return codes that will appear in the Job Spool
In JESMSGLG the error will beIEC161I 056-084,TRGGXXXX,JS010,IFILE01,,,
In SYSPRINT of the step failed the error will beIDC3300I ERROR OPENING TRGXX.MAST.CLUSTERIDC3351I ** VSAM OPEN RETURN CODE IS 118
Solution: A VERIFY issued on VSAM file TRGXXX.MAST.CLUSTER will correct this error
107
VERIFY Example (Contd..)//JOBTRGXX ...//STEP1 EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=A//SYSIN DD *VERIFY -DATASET(TRGXXX.MAST.CLUSTER)/*
108
ALTERNATE INDEX Allows for a KSDS to be accessed in a different order other than the primary
key
Allows the creation of an index for a non-indexed object, such as an ESDS cluster
109
Steps to create an ALTINDX DEFINE command to create the alternate index
BLDINDEX command to build the keys for the alternate index
DEFINE command to create a PATH relating the alternate index to the base cluster
110
DEFINE ALTINDX example//JOBTRGXX ...//DEFINE EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=*//SYSIN DD *DEFINE AIX -(NAME(TRGXXX.MAST.TEMP.AIX) -VOLUMES(TRG001) -RELATED(TRGXXX.MAST.CLUSTER) -UPGRADE -TRACKS(21) -KEYS(24,8) RECORDSIZE(200 200) -FREESPACE(10,10) NONUNIQUEKEY -DATA -(NAME(TRGXXX.MAST.TEMP.AIX.DATA) -INDEX -(NAME(TRGXXX.MAST.TEMP.AIX.INDEX) -)/*
111
BLDINDX The BLDINDEX command builds alternate indexes for existing data sets
Alternate Index can be built only after its base has been loaded with at least one record
112
BLDINDX example
//JOBTRGXX ...//BLDINDEX EXEC PGM=IDCAMS//DD1 DD DSN=TRGXXX.TEMP.SEQ,DISP=SHR //DD2 DD DSN=TRGXXX.MAST.TEMP.AIX,DISP=SHR//IDCUT1 DD VOL=TEMPDA,UNIT=3380,DISP=OLD,AMP='AMORG//IDCUT2 DD VOL=TEMPDA,UNIT=3380,DISP=OLD,AMP='AMORG' //SYSPRINT DD SYSOUT=*//SYSIN DD *BLDINDEX INFILE(DD1) - OUTFILE(DD2) /*
113
DEFINE PATH After defining an alternative index, a PATH must be defined to access the
data set. This forms the connection between the alternative index and the base cluster, and the connection is stored in the catalog
When a program opens a path for processing, both the base cluster and the alternate index are opened
114
DEFINE PATH example
//JOBTRGXX ...//BLDINDEX EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=*//SYSIN DD *DEFINE PATH ( - NAME(TRGXXX.MAST.TEMP.IX) - PATHENTRY(TRGXXX.MAST.TEMP.AIX) ) /*
115
GDG A group of chronologically or functionally related data sets are called
Generation Data Group (GDG)
Each data set within a GDG is called a Generation Data Set or simply a Generation
They are processed periodically, often by adding a new generation, retaining previous generations, and sometimes discarding the oldest generation
Each generation data set in the group will have the name as GDG name.GxxxxVyy, where xxxx is the generation number and yy is the version number
116
GDG (Contd..) GDGs can be referred in a JCL by means of an absolute name or relative
name
Absolute name is by coding the complete Generation name as GDGname.G0001V00
Relative name is a signed integer used to refer to the latest (0), the next to the latest (1), and so forth, generation. The relative number can also be used to catalog a new generation (+1)
117
GDG Advantages The advantages of grouping related data sets are:
All of the data sets in the group can be referred to by a common name
The operating system is able to keep the generations in chronological order
Outdated or obsolete generations can be automatically deleted by the operating system
118
GDG Usage One of the important usage of a GDG is for cataloging periodic backups of
VSAM datasets Example, a GDG of limit 7 can be used to take backup of VSAM data
sets from the batch job for all 7 days of the week The GDG base after data sets are cataloged will be as follows
GDGname.G0001V00 GDGname.G0001V01 GDGname.G0001V06
Another important usage of GDG is for cataloging periodic reports (weekly, monthly, etc). Example, a GDG with limit 12 can hold monthly reports for a year
119
GDG SyntaxDEFINE GENERATIONDATAGROUP
(NAME(entryname) LIMIT(limit) [EMPTY | NOEMPTY] [SCRATCH | NOSCRATCH] [TO(date) | FOR(days)])
120
GDG example//JOBTRGXX ...//DEFGDG EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=A//SYSIN DD *DEFINE GENERATIONDATAGROUP (- NAME(TRGXXX.MAST.GDG) - LIMIT(5) - SCRATCH ) /*
121
VSAM Backup considerations
//JOBTRGXX ...//LOADSTEP EXEC PGM=IDCAMS//SYSPRINT DD SYSOUT=A//DD1 DD DSN=TRGXXX.MAST.GDG(+1),// DISP=(NEW,CATLG,DEL),UNIT=TAPE,// VOL=TEMPAD,DCB=(RECFM=FB,LRECL=80)//SYSIN DD *REPRO -
INDATASET(TRGXXX.MAST.CLUSTER) - OUTFILE(DD1) /*
122
Utility U.5 in ISPF
A user interface is available under option U.5. This provides 2 options Access method services VSAM maintenance utility
123
U.5.1 OptionAccess method services (option u.5.1) provides interface for the following functions
Define Cluster Define alternate index Define path Alter VSAM dataset characteristics Rename a dataset Copy/Load a VSAM dataset Delete a VSAM dataset Print a VSAM dataset Verify endfile markers
124
VSAM Advanced Topics
125
CICS VSAM Transparency for z/OS CICS VSAM Transparency for z/OS can help you unlock value in data used
by your legacy applications and extend its use to new DB2 applications, online and e-business
126
VSAM to DB2 migration 24x7 availability
Running adhoc queries
Ability to perform data analysis (mgt reporting, analytics)
Exploitation of database maintenance tools
Integration with new applications based on DB2 technology
127
Other advanced topics in VSAM
VSAM Extended Format & Extended Addressability
Data striping
Data compression
Partial space release
System-managed buffering (SMB)
VSAM Record Level Sharing (RLS)
Utilities: File-Aid, DITTO, STARTOOL
128
Discussion Topics
What does an index component contain in KSDS ?
How data is organized in Data Component ?
What is the Index search technique for a Random process?
Access Method Services, IDCAMS creates and maintains VSAM DS. State
True / False
129
Discussion topics (Contd.)
The number of extents that the VSAM can grow up to : a) 123 b) 251 c) 255
d) none
What is Alternate Index ?
How is Alternate Index created ?
How does the BLDINDX perform ?
How is an LDS different from an ESDS?
130
Demo/Exercise
Session 4
131
Demo
Create a VSAM KSDS
Load VSAM KSDS (Use Repro)
Create an Alternate Index
Build Index
Define Path
Do a LISTCAT on KSDS and explain the output
132
References MVS/VSAM for the Application Programmer Gary D.Brown & S.A.M.
Smith
VSAM Demystified Mary Lovelace et al. IBM Redbooks 2003 (Document Number SG24-6105-01) in IBMs Website
DFSMS/MVS V1R2 Access Method Services for VSAM (Document Number SC26-4905-01) in IBMs Website
133
THANK YOU
PowerPoint PresentationSessions Outline - Day 3ObjectivesIntroduction to VSAM (Virtual Storage Access Method)Topics CoveredWhat is VSAM?VSAM CharacteristicsVSAM Characteristics (Contd.)VSAM Dataset OrganizationsNON-VSAM Access MethodsSimilarities between VSAM & NON-VSAM DatasetsVSAM Dataset OrganizationSlide 13VSAM TerminologyCatalog ManagementRecord ManagementLogical recordKey fieldPhysical recordClusterSphereData and Index ComponentControl Interval and Control AreaAlternate IndexesSpanned RecordsControl Intervals and Control AreasControl Interval Control Interval & Control AreaGeneral format of a Control IntervalFormat of Data Control IntervalControl Information Field of a CIControl Information Fields in a CICISZ (CI Size) an exampleInserting a record in a CIControl Interval SplitFormat of Index Control IntervalStructure of VSAM DatasetsSlide 38ObjectiveTypes of VSAM DatasetsVSAM Datasets TypesESDS CA StructureCOBOL example ESDS data setRRDS StructureCOBOL example - Sequential RetrievalCOBOL example - Direct RetrievalKSDS StructureSlide 48Slide 49LDS StructureComparison of VSAM DSComparison of VSAM DS (Contd.)More on KSDS Index StructureSlide 54General Format of Index SetGeneral format of Sequence SetIndex Search TechniquesExample-1 How Index & Sequence Sets workExample-2 Data Component StructureExample-2 (Contd.) Data Component StructureShare option in VSAMShare option cont:....Syntax and attributesAccess Method ServicesSlide 65Slide 66Introduction to IDCAMSIDCAMS UtilityIDCAMS FeaturesInvoking IDCAMSInvoking IDCAMS (Contd.)IDCAMS CommandsCOMMANDSCOMMANDS (Contd..1)COMMANDS (Contd..2)Condition CodesCondition Codes (Contd..1)Condition Codes (Contd..2)Condition Codes (Contd..3)Modal CommandsModal Commands (Contd.)Modal Commands - SyntaxFunctional CommandsFunctional Commands (Contd..1)Functional Commands (Contd..2)Functional Commands (Contd..3)Functional Commands (Contd..4)Functional Commands (Contd..5)Example: Modal & Functional CommandsDefine and Load a VSAM DatasetDEFINE CLUSTERDEFINE CLUSTER exampleLISTCATLISTCAT SyntaxLISTCAT exampleREPROREPRO SyntaxREPRO exampleDELETEDELETE Command Syntax DELETE examplePRINTPRINT SyntaxPRINT exampleVERIFYVERIFY ExampleVERIFY Example (Contd..)ALTERNATE INDEXSteps to create an ALTINDXDEFINE ALTINDX exampleBLDINDXBLDINDX exampleDEFINE PATHDEFINE PATH example GDG GDG (Contd..) GDG Advantages GDG Usage GDG SyntaxGDG exampleVSAM Backup considerationsUtility U.5 in ISPFU.5.1 OptionVSAM Advanced TopicsCICS VSAM Transparency for z/OS VSAM to DB2 migrationOther advanced topics in VSAM Discussion TopicsDiscussion topics (Contd.)Demo/ExerciseDemo ReferencesTHANK YOU