DB2 SQL Workload Test
Nothing can degrade the performance of the server like a resource-hungry or a long-running query! When such queries execute on the server, they either hog almost all the available CPU, memory, and disk resources or keep the resources locked for long time periods, thus leaving little to no resources for carrying out other critical database operations. This can significantly slowdown the database server and adversely impact user experience with the server. To ensure peak performance of the DB2 UDB server at all times, such queries should be rapidly identified and quickly optimized to minimize resource usage. This is where the DB2 SQL Workload test helps.
At configured intervals, this test compares the usage levels and execution times of all queries that started running on the server in the last measurement period and identifies a ‘top query’ in each of the following categories - CPU usage, memory usage, disk activity, and execution time. The test then reports the resource usage and execution time of the top queries and promptly alerts administrators if any query consumes more resources or takes more time to execute than it should. In such a scenario, administrators can use the detailed diagnosis of this test to view the inefficient queries and proceed to optimize them to enhance server performance.
Target of the test : A DB2 UDB server
Agent deploying the test : An internal agent
Outputs of the test : One set of results for the DB2 UDB server monitored
|
Measurement | Description | Measurement Unit | Interpretation |
---|---|---|---|
Maximum physical read rate |
Indicates the number of physical disk reads performed by the top query per execution. |
Seconds/read |
If the value of this measure is abnormally high, you can use the detailed diagnosis of this measure to view the top-5 (by default) queries generating maximum physical disk activity. From this, you can identify the top query in terms of number of physical disk reads. You may then want to optimize the query to reduce the disk reads. |
Maximum physical write rate |
Indicates the number of memory buffers used by the top query per execution. |
Seconds/write |
If the value of this measure is abnormally high, you can use the detailed diagnosis of this measure to view the top-5 (by default) queries consuming memory excessively. From this, you can easily pick that query which is consuming the maximum memory. You may then want to optimize the query to minimize memory usage. |
Maximum user CPU time |
Indicates the CPU time used for user level processing upon execution of the top query. |
Seconds |
If the value of this measure is over 30 seconds, you can use the detailed diagnosis of this measure to the top-5 (by default) queries hogging the CPU resources. From this, you can easily pick that query which is consuming the maximum CPU. You may then want to optimize the query to minimize CPU usage. |
Maximum elapsed time |
Indicates the running time of each execution of the top query. |
Seconds |
If the value of this measure crosses 10 seconds, you can use the detailed diagnosis of this measure to view the top-5 (by default) queries that are taking too long to execute. . From this, you can easily pick that query with the maximum execution time. You may then want to optimize the query to minimize execution time. |
Maximum system CPU time |
Indicates the CPU time used for system level processing upon execution of the top query. |
Seconds |
If the value of this measure is over 30 seconds, you can use the detailed diagnosis of this measure to the top-5 (by default) users consuming the maximum system CPU time. From this, you can easily pick that query which is consuming the maximum CPU. You may then want to optimize the query to minimize CPU usage. |
Note - This test will no longer be supported from DB2 10.5 version.