HDAM and HIDAM databases
This section explains how the Parallel Unload facility works for HDAM and HIDAM databases.
You can choose the ranges in the subsets by specifying starting and ending values, or you can allow the Unload function to choose the ranges by specifying LIMITS(AUTO).
You must include a DD statement for each subset. If you specify LIMITS(AUTO), the ddnames must be DFSURGU1, DFSURGU2, DFSURGU3, and so on. You can specify up to five data sets; the Unload function creates the corresponding number of subsets. For example, if you provide three DD statements, the Unload function splits the data into three subsets.
Each subset you define is unloaded by a subtask of the unload job. Each subtask allocates its own buffer pools. Each subtask initially allocates one cylinder of buffers for each data set group or partition in the database. The Unload function allocates more buffers as needed. When you use the Parallel Unload facility, increase the region size specified for the job to compensate for the additional buffers required.
An HD Unload data set is created for each subset. When you reload the database, concatenate these data sets together. The concatenated data sets appear to the Reload function or the IMS HD Reorganization Reload utility as a single data set.
HIDAM databases are split by root key ranges. HDAM databases are split by RAA block numbers. Use discretion in selecting these ranges to minimize DASD head contention.
If you do not specify LIMITS(AUTO), the LIMITS keyword must specify the starting and ending values for each range. You can specify the ddname for the unload data set; if you do not specify a ddname, the Unload function uses a default. An example of the LIMITS keyword follows:
ThestartValue,endValue, andddname are required for each subset. You can specify up to five sets of values and/or subsets. Each startValue/endValue can be a maximum of 32 bytes. One DD statement is required for each subset defined; the DD statements specify the HD Unload data sets and must use the ddname specified in the LIMITS keyword. If these values are not specified, a ddname of DFSURGU1 is assumed for the first set of limits, a ddname of DFSURGU2 is assumed for the second set of limits, and so on.