There are three types of VSAM data sets supported by
z/OS® XL C/C++, all
of which are held on direct-access storage devices.
- Key-Sequenced Data Set (KSDS) is used when a record is accessed
through a key field within the record (for example, an employee directory
file where the employee number can be used to access the record).
KSDS also supports sequential access. Each record in a KSDS must
have a unique key value.
- Entry-Sequenced Data Set (ESDS) is used for data that is primarily
accessed in the order it was created (or the reverse order). It supports
direct access by Relative Byte Address (RBA), and sequential access.
- Relative Record Data Set (RRDS) is used for data in which each
item has a particular number, and the relevant record is accessed
by that number (for example, a telephone system with a record associated
with each number). It supports direct access by Relative Record Number
(RRN), and sequential access.
In addition to the primary VSAM access described above, for KSDS
and ESDS, there is also direct access by one or more additional key
fields within each record. These additional keys can be unique or
non-unique; they are called an alternate index (AIX).
Notes: - VSAM Linear Data Sets are not supported in z/OS XL C/C++ I/O.
- z/OS XL C/C++ supports
extended addressable KSDS, ESDS, and RRDS data sets. Extended addressable
KSDS data sets can be accessed through an alternate index, but extended
addressable ESDS data sets cannot.