z/OS DFSMS Using Data Sets
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Optimizing Free Space Distribution

z/OS DFSMS Using Data Sets
SC23-6855-00

With the DEFINE command, either specify the percentage of free space in each control interval and the percentage of free control intervals per control area or specify data class and use the FREESPACE attribute assigned through the ACS routines established by your storage administrator.

Free space improves performance by reducing the likelihood of control interval and control area splits. This, in turn, reduces the likelihood of VSAM moving a set of records to a different cylinder away from other records in the key sequence. When there is a direct insert or a mass sequential insert that does not result in a split, VSAM inserts the records into available free space.

The amount of free space you need depends on the number and location of records to be inserted, lengthened, or deleted. Too much free space can result in:
  • Increased number of index levels, that affects run times for direct processing.
  • More direct access storage required to contain the data set.
  • More I/O operations required to sequentially process the same number of records.
Too little free space can result in an excessive number of control interval and control area splits. These splits are time consuming, and have the following additional effects:
  • More time is required for sequential processing because the data set is not in physical sequence.
  • More seek time is required during processing because of control area splits.

Use LISTCAT or the ACB JRNAD exit to monitor control area splits. See JRNAD Exit Routine to Journalize Transactions.

When splits become frequent, reorganize the data set using REPRO or EXPORT. Reorganization creates a smaller, more efficient data set with fewer control intervals. However, reorganizing a data set is time consuming. To reduce the need for reorganizing data sets, use the CA reclaim function. With CA reclaim, empty CA space is reclaimed automatically and CA split processing uses control areas that have been reclaimed instead of using space at the end of the data and index. See Reclaiming CA Space for a KSDS for more information.

Figure 1 shows how free space is determined for a control interval.
Figure 1. Determining Free Space

For this data set, each control interval is 4096 bytes. In each control interval, 10 bytes are reserved for control information. Because control interval free space is specified as 20%, 819 bytes are reserved as free space. (4096 × .20 = 819). Round down. The free space threshold is 3267 bytes. The space between the threshold and the control information is reserved as free space.

Because the records loaded in the data set are 500-byte records, there is not enough space for another record between byte 3000 and the free space threshold at byte 3267. These 267 bytes of unused space are also used as free space. This leaves 1086 bytes of free space; enough to insert two 500-byte records. Only 86 bytes are left unusable.

When you specify free space, ensure that the percentages of free space you specify yield full records and full control intervals with a minimum amount of unusable space.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014