Analyzing optimization exceptions for HISAM and SHISAM databases

Analyze the optimization exceptions that were detected for HISAM databases. For SHISAM databases, no optimization exceptions are issued.

Before you begin

Ensure that you can access the Sensor Data Statistics report that contains the latest sensor data. If you cannot access this report, run the FF DB Sensor Printing utility to generate the report.

About this task

In the following procedure, you will analyze each optimization exception that you received for HISAM and SHISAM databases.

For each exception that was reported, you will first identify the relevant data elements to understand the condition of the database. Then you will analyze the relevant IMS Tools reports to learn more about the database state. Finally, if you use Management Console or Administration Console and if relevant sensor data charts are available, you will analyze historical trends of sensor data to understand the trend characteristics of the sensor data that was obtained from the database.

By completing these steps, you will determine the possible causes of the optimization exceptions. The causes can be the that LRECL size of the primary data set, the CI size of the overflow data set for HISAM, or both do not match the length of database records or segments.

Procedure

Follow the instructions to analyze the AVERAGE_DB_RECORD_LENGTH exception.
Exception class name: AVERAGE_DB_RECORD_LENGTH
This exception indicates that the average database record length has exceeded the threshold value.
The average record length can be used to determine the logical record length of the primary data set of HISAM databases.
A HISAM database is considered to be in its optimal state when root segments and dependent segments that belong to the same database record exist in the same logical record. However, when IMS applications add dependent segments, and if the space in the logical records is insufficient to store dependent segments, the dependent segments will be stored in a logical record in the overflow data set.
If the length of a database record is longer than the logical record length (KSDS LRECL), the database record is divided and stored in the primary data set and the overflow data set, which results in increased I/O operations.
Optimizing HISAM databases typically includes tuning the logical record length and the CI size of the primary database data set to decrease the number of segments in the overflow data set.
Complete these steps to analyze this exception:
  1. Locate the following data elements in the Sensor Data Statistics report:
    DB_AVG_DBREC_LENGTH
    The value for this data element indicates the average length of database records.
    DB_NUM_ROOT
    The value for this data element indicates the number of root segments (that is, the number of database records).
    DB_NUM_SEG
    The value for this data element indicates the number of segments in a data set.
    By comparing the numbers of segments in the primary data set and in the overflow data set, you can determine the ratio of segments that exist in the overflow.
    DB_BLOCK_SIZE
    DB_LRECL_SIZE
    The values for these data elements indicate the CI size and logical record length of data set.
    By comparing the CI size and the logical record length of the primary data set with the average database length, you can determine if the CI size and the logical record length of the primary data set are long enough.
    DB_ESTIMATED_DBREC_IO
    The value for this data element indicates the estimated number of I/O operations that are required to read a database record (that is, the average number of reading CIs to read the root segment and all dependent segments by tracking the hierarchical path). This value is used later in optimization tuning.
    Note: The value is an estimated value; the actual I/O count might be different.
    When this value is small, most of the segments that belong to the same database record are in the same CI. Even if the average length of database records is long, you do not necessarily need to resolve this exception. If this value is large, consider taking actions to resolve this exception.
  2. Optional: To obtain more information about the segment distribution, run the HD Pointer Checker utility of IMS HP Pointer Checker, or IMS HP Image Copy with the HDPC=YES option, and generate the HISAM Data Set Statistics report.

    By analyzing this report, you can determine the number of occurrences for each segment type in the primary and the overflow data sets.

  3. Optional: To view the trend of data over time, locate the following charts in Management Console or Administration Console:
    • Average Database Record Length chart
    • Number of Database Records chart

    Understanding the trend over time can help you anticipate the future behavior of the data sets. Use this knowledge to determine when you might need to take preventative action and to establish efficient maintenance plans.

You have now obtained information about the current database state that caused this exception. You will use this information later to determine the appropriate action to resolve the exception.
In Step c, you also identified the sensor data chart that can help you establish maintenance plans to prevent this exceptional state from occurring in the future.

What to do next

If you received other exceptions that belong to other exception categories, see the following topics to determine your next step:

If the only exceptions that you received are optimization exceptions, continue with Resolving optimization exceptions for HISAM and SHISAM databases.