Scoring rules

更新时间:
复制 MD 格式

Database Autonomy Service (DAS) periodically inspects your database instances and assigns a health score to help you understand their operational status. This topic lists the deduction items and scoring rules.

Usage notes

  • You must enable the Inspection and Scoring feature before you can view the inspection list. For instructions, see Inspection and scoring.

  • The Inspection and Scoring feature uses a 100-point scale. The system deducts points based on the instance's runtime status, in accordance with the scoring rules. You can view the final score in the console. For more information, see Inspection and scoring.

Scoring rules

  • For ApsaraDB RDS for MySQL, self-managed MySQL, and PolarDB for MySQL:

    Item

    Description

    Criterion

    Condition

    Formula

    CPU utilization (cpuUsage)

    The average daily CPU utilization. For multi-core CPUs, the value is normalized to a single-core equivalent.

    major

    70% <= cpuUsage < 80%

    1 + (cpuUsage - 0.7) * 20

    critical

    cpuUsage >= 80%

    min(3 + (cpuUsage - 0.8) * 30, 10)

    Memory usage (memUsage)

    The average daily memory usage.

    major

    80% <= memUsage < 90%

    1 + (memUsage - 0.8) * 20

    critical

    memUsage > 90%

    min((memUsage - 0.9) * 50, 10)

    Storage usage

    Important

    This deduction item does not apply to self-managed MySQL instances.

    The percentage of used storage out of the total available storage.

    Available days

    availableDays <= 30

    15 - availableDays / 3

    Large tables

    Note

    A table is considered large if its tablespace, including fragments, exceeds 50 GB.

    Important

    PolarDB for MySQL does not analyze large tables, so this deduction item does not apply.

    bigTableCount > 0

    min(bigTableCount, 15)

    Connection usage (connectionRate)

    The average daily connection count as a percentage of the maximum allowed connections.

    major

    70% <= connectionRate < 80%

    1

    critical

    connectionRate > 80%

    3

    IOPS usage (iopsUsage)

    The average daily IOPS as a percentage of the maximum allowed IOPS.

    major

    70% < iopsUsage < 90%

    3

    critical

    iopsUsage > 90%

    5

    Active sessions (threadRunning)

    The daily count of active sessions.

    major

    threadRunning > min(2 * cpuCores + 8, 64)

    3

    critical

    threadRunning > min(4 * cpuCores + 8, 96)

    9

    Slow SQL statements (slowSqlCount)

    The total number of slow SQL statements generated per day.

    Note

    Click the value to view the top 5 slow SQL statements by execution count.

    minor

    0 < slowSqlCount < 100

    1 + (slowSqlCount - 10) / 30

    major

    100 <= slowSqlCount < 500

    4 + (slowSqlCount - 100) / 30

    critical

    slowSqlCount >= 500

    min(18 + (slowSqlCount - 500) / 30, 30)

    SQL security audit

    The number of high-risk SQL statements and SQL injection events.

    High-risk SQL statements

    riskSqlCount > 0

    min(riskSqlCount, 5)

    SQL injection

    sqlInjectionCount > 0

    min(sqlInjectionCount, 5)

    Deadlock

    Whether a deadlock occurred during the day.

    minor

    A deadlock is detected.

    3

  • For Redis:

    Item

    Description

    Criterion

    Condition

    Formula

    CPU utilization (cpuUsage)

    The average daily CPU utilization. For multi-core CPUs, the value is normalized to a single-core equivalent.

    major

    70% <= cpuUsage < 80%

    1 + (cpuUsage - 0.7) * 20

    critical

    cpuUsage >= 80%

    min(3 + (cpuUsage - 0.8) * 30, 10)

    Memory usage (memUsage)

    The average daily memory usage.

    major

    80% <= memUsage < 90%

    1 + (memUsage - 0.8) * 20

    critical

    memUsage > 90%

    min((memUsage - 0.9) * 50, 10)

    Connection usage (connectionRate)

    The average daily connection count as a percentage of the maximum allowed connections.

    major

    70% <= connectionRate < 80%

    1

    critical

    connectionRate > 80%

    3

    Traffic usage

    The average daily traffic as a percentage of the maximum allowed traffic.

    major

    80% <= FlowRate < 85% (including inFlow and outFlow)

    1

    critical

    FlowRate > 85%

    3

    critical

    FlowRate > 90%

    5

    Hot key

    Whether hot keys were detected.

    minor

    Hot keys were detected.

    3

    Slow SQL statements (slowSqlCount)

    The total number of slow SQL statements generated per day. Click the value to view the top 5 slow SQL statements by execution count.

    minor

    0 < slowSqlCount < 100

    1 + (slowSqlCount - 10) / 30

    major

    100 <= slowSqlCount < 500

    4 + (slowSqlCount - 100) / 30

    critical

    slowSqlCount >= 500

    min(18 + (slowSqlCount - 500) / 30, 30)

    Memory fragmentation ratio

    The memory fragmentation ratio is calculated as follows: mem_fragmentation_ratio = used_memory_rss / used_memory

    • used_memory_rss: The physical memory that the operating system allocates to Redis, which includes memory fragments.

    • used_memory: The memory that Redis uses to store data.

    For more information about Redis memory fragmentation and the memory fragmentation ratio, see Redis memory fragmentation.

    minor

    HighMemoryFragment > 1.5

    min(HighMemoryFragment * 2, 5)