Help Center/ GaussDB(DWS)/ Troubleshooting/ Cluster Performance/ Tuning Systems with High CPU Usage
Updated on 2025-01-06 GMT+08:00

Tuning Systems with High CPU Usage

If the CPU load of the current cluster is high, perform the following steps:

  1. Check whether the CPU usage of the current cluster service is too high.

    1. Log in to the GaussDB(DWS) console.
    2. Choose Monitoring > Alarm, select the cluster for which the alarm is generated in the cluster selection drop-down list in the upper right corner, view the alarm information of the cluster in the last seven days, and locate the name of the node for which the alarm is generated based on the location information.
    3. Choose Dedicated Clusters > Clusters, locate the row that contains the cluster for which the alarm is generated, and click Monitoring Panel in the Operation column.
    4. Choose Monitoring > Node Monitoring > Overview to view the CPU usage of each node in the current cluster. Click on the right to view the CPU performance metrics in the last 1, 3, 12, or 24 hours and see whether there is a sharp increase in the CPU usage.

  2. Set the CPU limit and quota for the resource pool.

    • CPU usage limit is essentially core binding, where CPU cores are allocated to a resource pool by percentage. Complex jobs running in the pool can only execute on the allocated CPUs.
    • CPU usage share is similar to assigning a specific weight to a resource pool, based on a percentage. The quota does not limit the number of CPU cores used by the resource pool. When a CPU is fully occupied, the resource pool that is running tasks on that CPU takes CPU time slices according to the assigned weight.

    Choose Limit to limit the number of CPU cores allocated for executing statements. You can also choose Shared Quota and enter a number to define the level of competition for CPU time slices among statements.

  3. Set exception rules to promptly terminate statements with high CPU usage.

    To prevent a particular statement from occupying excessive CPU resources and affecting other statements in the database, establish exception rules to better manage CPU resource usage. For details, see Exception Rules. To maintain the stability of the cluster, promptly terminate SQL statements that surpass the threshold defined by the exception rule.

  4. Reduce the number of concurrent jobs based on service scenarios.