Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Virtual Storage Access Method
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Files== The physical organization of VSAM data sets differs considerably from the organizations used by other access methods, as follows. A VSAM file is defined as a cluster of VSAM components, e.g., for KSDS a DATA component and an INDEX component. ===Control intervals and control areas=== VSAM components consist of fixed length physical blocks grouped into fixed length control intervals<ref name=VSAM.CI1/><ref name=VSAM.CI2/> (CI) and control areas (CA). The size of the CI and CA is determined by the [[IBM mainframe utility programs#IDCAMS|Access Method Services]] (AMS), and the way in which they are used is normally not visible to the user. There will be a fixed number of control intervals in each control area. A control interval normally contains multiple records. The records are stored within the control interval starting from the low address upwards. Control information is stored at the other end of the control interval, starting from the high address and moving downwards. The space between the records and the control information is free space. The control information comprises two types of entry: a control interval descriptor field (CIDF) which is always present, and record descriptor fields (RDF) which are present when there are records within the control interval and describe the length of the associated record. Free space within a CI is always contiguous. When records are inserted into a control interval, they are placed in the correct order relative to other records. This may require records to be moved out of the way inside the control interval. Conversely, when a record is deleted, later records are moved down so that the free space remains contiguous. If there is not enough free space in a control interval for a record to be inserted, the control interval is split. Roughly half the records are stored in the original control interval while the remaining records are moved into a new control interval. The new control interval is taken from a pool of free control intervals within the same control area as the original control interval. If there is no remaining free control interval within that control area, the control area itself is split and the control intervals are distributed equally between the old and the new control areas. You can use three types of record-orientated file organization with VSAM (the contents of linear data sets have no record structure): ===Sequential organization=== {{further|entry-sequenced data set}} An ESDS may have an index defined to it to enable access via keys, by defining an Alternate Index. Records in ESDS are stored in order in which they are written by address access.<ref>{{cite web |url=https://walton.uark.edu/enterprise/IBM/systemZ/downloads/module3/VSAM-Introductory.ppt |title=VSAM: introductory}}</ref><ref>{{cite web |title=Server Functionality |url=https://supportline.microfocus.com/documentation/books/tps62/mafunc.htm |quote=Sequential (VSAM ESDS β Entry Sequenced Dataset)}}</ref><ref>{{cite web |url=http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.469.8853&rep=rep1&type=pdf |quote=An ESDS VSAM data set contains records in the order in which they were entered |title=ABCs of z/OS System Programming Volume 3|citeseerx=10.1.1.469.8853 }}</ref> Records are loaded irrespective of their contents and their byte addresses cannot be changed. ===Indexed organization=== {{further|key-sequenced data set}} A KSDS has two parts: the index component and the data component. These may be stored on separate disk volumes. While a basic KSDS only has one key (the primary key), alternate indices may be defined to permit the use of additional fields as secondary keys. An alternate index (AIX) is itself a KSDS. The data structure used by a KSDS is nowadays known as a [[B+ tree]].<ref>{{cite web |url=https://patents.justia.com/patent/9043295 |title=US Patent for Providing record-level alternate-index upgrade locking}}</ref><ref>{{cite web |url=https://www.wisegeek.com/what-is-vsam.htm |quote=This index is called a B+ tree. |title=What is VSAM?}}</ref> ===Relative organization=== {{further|relative record data set}} An RRDS may have an index defined to it to enable access via keys, by defining an Alternate Index. === Linear organization === {{further|linear data set}} An LDS is an unstructured VSAM dataset with a control interval size of a multiple of 4K. It is used by certain system services.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)