IAM Data Set Structure Overview
Complementing overflow structures within an IAM file can accommodate any type of file growth. A percentage of every block in an IAM file can be left free at load time to accommodate randomly distributed additions. Free space can be reserved during file load to accommodate file expansion. Additional extents are taken as needed for file expansion.
Programs that create IAM files are device-independent. IAM automatically determines the target device type and, using the file's record length and CISIZE, calculates the best block size for that device. Programs that process IAM files are totally insulated from the blocking and structure of an IAM file.
IAM file allocation
An IAM file is allocated on the disk and cataloged using an IDCAMS DEFINE or functionally equivalent operation, such as VSAM JCL allocation, or various TSO ISPF panels offered by various vendors. The IAM file is created when the file is opened for OUTPUT and loaded with one or more records sequentially by key.
IAM files can be loaded into a new allocation or an existing file allocation with a disposition of OLD or SHR as appropriate. IAM files are always considered to be reusable unless the IAM Global Option ENABLE=NOREUSE is set, and the file is defined with the NOREUS attribute. The exception to this is that once an alternate index is defined for a base cluster, the base cluster becomes not reusable to retain full VSAM compatibility because there is no mechanism to update the alternate index during a file load.
Non-encrypted IAM files are simple non-VSAM space allocations managed via the EXCP access technique. IAM data sets contain fixed length blocks, within which IAM manages the data, index, and file description information. IAM data sets can be defined across multiple volumes. They make full use of secondary space allocation and do not require contiguous (CONTIG) extents. Space for an IAM file can be defined in records, tracks or cylinders. Pervasive Encryption IAM files are allocated as VSAM Linear data sets and are managed with IBM Media Manager and contain fixed length Control Intervals. Control Intervals in an IAM Linear data set are logically exactly the same as blocks in an IAM non-VSAM data set. All material in this space that discusses IAM blocks can be taken to mean control intervals in an IAM Linear data set if the data set has Pervasive Encryption enabled.
VSAM's 4.3 GB file size limitation on non-SMS VSAM files does not apply to IAM files.
IAM file integrity
IAM files have been designed to provide the highest level of both file and data integrity. Some of the design factors that enhance file integrity include a prime index structure that will never be updated, minimizing as much as possible the need to update other control information about the file structure, and designing a structure of adding to the existing structure, as opposed to modifying the existing file structure. The dynamically extended portion of the file structure is validated during open, with efforts made to recover from the most anticipated type of structure errors that may occur. Every effort has been made to provide an expandable, non-destructible file structure that provides an outstanding level of performance and responsiveness.
For circumstances where IAM files need to be shared between address spaces, and even between LPARs, IAM provides IAM/RLS and the optional IAM/PLEX feature. These features provide enhanced file integrity when shared access and update processing are required along with journaling and recovery capabilities.
This section provides information about the following topics: