The CA Datacom/DB DBUTLTY program provides most of database utility functions for the CA Datacom environment. Over 30 different database utility functions can execute using the DBUTLTY program.
The following topics are discussed on this page:
During CA Datacom installation, a default DBMSTLST module is assembled. This default assemble determines the various buffers that are allocated for use when running DBUTLTY. For many of the important database functions that DBUTLTY performs, the buffers specified by DBMSTLST determine the performance metrics of the DBUTLTY execution. For example, elapsed time, I/Os, and CPU usage.
The DBMSTLST default buffer allocations are small keeping the necessary amount of 31-bit space to execute the DBUTLTY program minimal. In most sites, adequate 31-bit memory is available. Using these small default allocations wastes resources and slows performance of the DBUTLTY functions.
The default buffer allocations for DBMSTLST are:
During various testings, we determined that different DBUTLY functions perform better with extra buffers specifications. You can experiment with having different copies of the DBMSTLST module stored in different user libraries. Then, at DBUTLTY execution time, use the library with the DBMSTLST that performs best for that utility function.
For most sites, the multiple DBMSTLST module approach is too complicated and time consuming. While the required number of buffers for each DBUTLTY function varies, consider the following as a minimal number of buffers in DBTMLST:
For sites with available space, some additional performance can be gained with the following slightly higher buffers numbers:
After a new installation process, immediately rerun the install job that builds the DBMSTLST module. Also specify the expanded buffer setting you select.
Having the unnecessary additional buffer sizes does not slow the processing of the utility. Having the extra buffers for the functions that need them could greatly improve processing time and resource consumption for the DBUTLTY.
Certain DBUTLTY functions, such as BACKUP, EXTRACT, and REORG, allow the specification of the SEQBUFS= in the DBUTLTY control cards. For these utility functions, specifying a value for SEQBUFS overrides the number of buffers specified in the DBMSTLST DATANO parameter. In z/OS sites, the value is set to 128 if the SEQBUFS is not specified. This ensures that the BACKUP, EXTRACT, and REORG functions have at least 128 data buffers for their processing.
As previously discussed, the default DBUTLTY DBMSTLST module does not specify enough buffers for large DBUTLTY executions. The previous section recommended changes to the DBMSTLST settings to provide a more substantial set of buffers.
This approach lacks some flexibility for certain utility operations where more buffers could aid in speeding up the processing. For example, during a DBUTLTY RECOVERY=FORWARD operation having a larger number of IXX, DXX, and data buffers could significantly improve the recovery time. The time it takes to rebuild a database after a failure could also be shortened. However, for other utilities such as a normal backup or extract, these additional buffers might not be beneficial.
For these special cases, you can use the DBUTLTY SET command to override the buffer settings for a given DBUTLTY execution. Once the SET command is issued, the selected buffer allocation remains in effect until the DBUTLTY execution ends or another SET command is encountered.
Using the SET command allows you to experiment with the number of buffers necessary to support long-running DBUTLTY jobs. Sometimes, the ability to add extra buffers to speed recovery or other processing is critical to sites that have experienced a database outage.
The DBUTLTY SET function uses a freeform text processor to pass various commands and settings from the JCL stream to the DBUTLTY program. Providing buffer specifications is only one of the overrides that this function can provide to the DBUTLTY program. For example:
The SET function shows you how to override data buffers to 9999, DXX buffers to 9999 and IXX buffers to 999.
Do not to set the buffers numbers so high that the DBUTLTY 31-bit memory size exceeds the size of the region's available 31-bit memory. For DBUTLTY functions that also include a sort, ensure that there is ample room for the 31-bit memory requirements of the sort.
For more information, see the following topics: