全部產品
Search
文件中心

Database Autonomy Service:評分規則

更新時間:Jul 06, 2024

DAS支援巡檢評分功能,可以對目標執行個體進行定期巡檢並給出健康評分,協助您清楚地瞭解資料庫運行情況。本文介紹巡檢評分的評分項及評分規則。

注意事項

  • 您需要開啟巡檢評分功能後才可查看巡檢列表,關於如何開啟,詳情請參見巡檢評分

  • 巡檢評分實行百分制,系統會根據評分規則對執行個體運行情況進行分數扣除,您可以在控制台查看最終得分,關於如何查看,詳情請參見巡檢評分

評分規則表

  • RDS MySQL、自建MySQL和PolarDB MySQL版

    扣分項

    含義

    扣分子項

    條件

    所扣分數

    CPU使用率(cpuUsage)

    一天CPU平均使用率,多核CPU換算成單核計算。

    警告

    70%<=cpuUsage<=80%

    1+(cpuUsage-0.7)*20

    危險

    cpuUsage>=80%

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

    記憶體使用量率(memUsage)

    一天記憶體平均使用率。

    警告

    80%<=memUsage<=90%

    1+(memUsage-0.8)*20

    危險

    memUsage>90%

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

    空間使用率(Space Usage)

    重要

    自建MySQL不支援空間使用率扣分項。

    已使用空間的平均值 / 總空間 * 100%。

    可使用天數

    availableDays<=30

    15-availableDays/3

    大表數量

    重要

    PolarDB MySQL版不進行大表分析,不支援此扣分項。

    bigTableCount>0

    min(bigTableCount,15)

    串連使用率(connectionRate)

    一天內串連數平均值 / 最大允許串連數 。

    警告

    70%<=connectionRate<=80%

    1

    危險

    connectionRate>80%

    3

    IOPS使用率(iopsUsage)

    一天內IOPS平均值 /最大允許IOPS值* 100%。

    警告

    70%<iopsUsage<90%

    3

    危險

    iopsUsage>90%

    5

    活躍會話(threadRunning)

    一天內產生的活躍會話的個數。

    警告

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

    3

    危險

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

    9

    慢SQL數量(slowSqlCount)

    一天內產生的慢SQL總條數。

    說明

    單擊後可查看執行次數Top5的慢SQL。

    存在

    0<slowSqlCount<100

    1+(slowSqlCount-10)/30

    警告

    100<=slowSqlCount<500

    4+(slowSqlCount-100)/30

    危險

    slowSqlCount>=500

    min[18+(slowSqlCount-50)/30, 30)]

    SQL安全審計(sqlInjectionCount)

    風險SQL數量和SQL注入數量。

    風險SQL

    riskSqlCount>0

    min(riskSqlCount,5)

    SQL注入

    sqlInjectionCount>0

    min(sqlInjectionCount,5)

    死結

    是否在一天時間內發生死結。

    存在

    存在

    3

  • Redis

    扣分項

    含義

    扣分子項

    條件

    扣分公式

    CPU使用率(cpuUsage)

    一天CPU平均使用率,多核CPU換算成單核計算。

    警告

    70%<=cpuUsage<=80%

    1+(cpuUsage-0.7)*20

    危險

    cpuUsage>=80%

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

    記憶體使用量率(memUsage)

    一天記憶體平均使用率。

    警告

    80%<=memUsage<=90%

    1+(memUsage-0.8)*20

    危險

    memUsage>90%

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

    串連使用率(connectionRate)

    一天內串連數平均值 / 最大允許串連數 * 100%。

    警告

    70%<=connectionRate<=80%

    1

    危險

    connectionRate>80%

    3

    流量使用率(FlowRate)

    一天內流量的平均數/最大流量 * 100%。

    警告

    80%<=FlowRate<=85%(包含inFlow和outFlow)

    1

    危險

    flowRate>85%

    3

    危險

    iopsUsage>90%

    5

    熱鍵(HotKey)

    出現HotKey的資訊。

    存在

    存在

    3

    慢SQL數量(slowSqlCount)

    一天內產生的慢SQL總條數,點擊後可查看執行次數Top5的慢SQL。

    存在

    0<slowSqlCount<100

    1+(slowSqlCount-10)/30

    警告

    100<=slowSqlCount<500

    4+(slowSqlCount-100)/30

    危險

    slowSqlCount>=500

    min[18+(slowSqlCount-50)/30, 30)]

    記憶體片段率(HighMemoryFragment)

    記憶體片段率的計算方式為:mem_fragmentation_ratio=used_memory_rss/used_memory

    • used_memory_rss ,表示作業系統實際分配給Redis的實體記憶體空間,裡麵包含了記憶體片段。

    • used_memory,表示Redis為了儲存資料實際申請使用的記憶體空間。

    Redis記憶體片段和Redis記憶體片段率的更多資訊,請參見Redis記憶體片段

    存在

    HighMemoryFragment>1.5

    min(HighMemoryFragment*2, 5)