A key-sequenced data set (KSDS) is a type of data set used by IBM's VSAM computer data storage system.[1] Each record in a KSDS data file is embedded with a unique key.[1] 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.[1] Together, the data and index components are called a cluster.[1]
Records can be accessed randomly or in sequence and can be variable-length.
As a VSAM data set, the KSDS data and index components consist of control intervals[1] which are further organized in control areas.[1] 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.[1]
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.[1] An alternate index is itself a KSDS.[1]