Virtual Storage Access Method: Difference between revisions

Content deleted Content added
Merge from Entry-sequenced data set following unopposed March proposal; short text and context; see Talk:Virtual Storage Access Method#Merge suggestion
Merge from Key-sequenced data set following unopposed March proposal; short text and context; see Talk:Virtual Storage Access Method#Merge suggestion
Line 40:
 
===Indexed organization===
A '''key-sequenced data set''' (KSDS) is a type of [[data set (IBM mainframe)|data set]] used by VSAM.<ref name="demystified"/>{{rp|5}} Each record in a KSDS data file is embedded with a unique key.<ref name="demystified"/>{{rp|20}} A KSDS consists of two parts, the data component and a separate [[index file]] known as the index component which allows the system to physically locate the record in the data file by its key value.<ref name="demystified"/>{{rp|13}} Together, the data and index components are called a cluster.<ref name="demystified"/>{{rp|15}}
{{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.
 
Records can be accessed randomly or in sequence and can be variable-length.
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.
 
As a [[VSAM]] data set, the KSDS data and index components consist of control intervals<ref name="demystified"/>{{rp|10}} which are further organized in control areas.<ref name="demystified"/>{{rp|12}} As records are added at random to a KSDS, control intervals fill and need to be split into two new control intervals, each new control interval receiving roughly half of the records. Similarly, as the control intervals in a control area are used up, a control area will be split into two new control areas, each new control area receiving roughly half the control intervals.<ref name="demystified"/>{{rp|17}}
The data structure used by a KSDS is nowadays known as a [[B+ tree]].<ref>{{cite web
 
|url=https://patents.justia.com/patent/9043295
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.<ref name="demystified"/>{{rp|15}} An alternate index (AIX) is itself a KSDS.<ref name="demystified"/>{{rp|16}}
|title=US Patent for Providing record-level alternate-index upgrade locking}}</ref><ref>{{cite web
 
|url=https://www.wisegeek.com/what-is-vsam.htm
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>
|quote=This index is called a B+ tree.
|title=What is VSAM?}}</ref>
 
===Relative organization===
Line 117 ⟶ 115:
*{{cite manual|title = z/OS 2.5 MVS Programming: Assembler Services Guide|id = SA23-1368-50|date = September 30, 2021|url = https://www.ibm.com/servers/resourcelink/svc00100.nsf/pages/zOSV2R5sa231368/$file/ieaa600_v2r5.pdf|ref = {{sfnref|ASMGUIDE}}| publisher = IBM}}
*{{cite web|url=http://www.mvsforums.com/techfaqsvsam.html|title=MVS Forums - Technical FAQ's - VSAM|website=Mvsforums.com|accessdate=12 December 2017}}
*[https://web.archive.org/web/20051023212932/http://www.lascon.co.uk/d002303.htm Lascon.co.uk]
*[https://web.archive.org/web/20070311021954/http://www.redbooks.ibm.com/redbooks/SG246105/wwhelp/wwhimpl/js/html/wwhelp.htm Redbooks.ibm.com]
 
{{Mainframe I/O access methods}}