全部產品
Search
文件中心

Database Autonomy Service:SQL Review

更新時間:Jul 06, 2024

資料庫自治服務DAS(Database Autonomy Service)提供SQL Review功能,本文介紹如何在SQL洞察和審計SQL洞察功能中進行SQL Review

前提條件

  • 已在DAS中接入對應的資料庫執行個體,並且接入狀態顯示為串連正常

  • 執行個體已開啟SQL洞察和審計,詳情請參見開啟SQL洞察和審計

支援的資料庫和地區

開啟DAS企業版後,才可以使用該企業版提供的SQL洞察和審計功能,不同的企業版支援的資料庫和地區不同。各個企業版支援的資料庫和地區請參見各個版本支援的資料庫和地區

功能介紹

SQL Review功能對選定區間與基準區間內的資料庫執行個體進行workload分析,並且對資料庫執行個體中啟動並執行SQL進行深度分析,展示資料庫執行個體的索引最佳化建議、SQL改寫建議、TOP SQL、新增SQL、失敗SQL、SQL特徵分析、執行變化SQL、效能惡化SQL和TOP流量表。

SQL Review功能提供全域SQL負載分析能力(包括SQL樣本、平均執行耗時,耗時比例,執行次數比例,平均掃描行數,總執行次數,首次出現時間等內容的分析),輔助使用者快速定位到資料庫執行個體中的可疑SQL(資源消耗過大、趨勢變化過大、效能惡化、執行失敗、新增SQL等),並對可疑SQL進行分析,給出相應的最佳化建議。

功能模組介紹:

  • 索引最佳化建議:以表為單位,展示使用者選擇時間段內SQL的索引最佳化建議,包括索引列、DDL語句、預期收益等。

  • SQL改寫建議:對執行效率不高效的SQL語句提供相應的改寫建議。

  • TOP SQL:分別展示資源消耗TOP 10 SQL、平均掃描行數TOP 10 SQL、執行次數TOP 10 SQL,協助使用者快速定位對資料庫影響較大的SQL。

  • 新增SQL:通過對診斷時間和對比時間內SQL的對比,展示新出現的SQL,協助使用者確認變更是否符合業務預期。

  • 失敗SQL:執行失敗的SQL列表,展示包括SQL ID、SQL樣本、資料庫、錯誤碼、錯誤次數。

  • SQL特徵分析:根據SQL文本進行特徵分析,並按照SQL類型對各個SQL特徵進行分類統計。

  • 執行變化SQL:分別按照平均掃描行數、執行次數的變動率對SQL進行統計,展示不同變動率範圍內的SQL模板數量、耗時比例、總執行次數、執行次數比例。

  • 效能惡化SQL:基於執行變化SQL,篩選出平均掃描行數、總執行次數或平均耗時超過指定變動率的SQL。

  • TOP流量表:基於資料庫中表的流量情況展示相應資訊,包括表名、資料庫名、相關SQL模板數、總執行次數、Select次數、Insert次數、Update次數、Delete次數和平均執行耗時等資訊。

操作步驟

  1. 登入DAS控制台

  2. 在左側導覽列中,單擊執行個體監控

  3. 找到目標執行個體,單擊執行個體ID,進入目標執行個體詳情頁。

  4. 在左側導覽列單擊請求分析 > SQL洞察和審計,然後在右側開啟的頁面單擊SQL洞察 > SQL Review

  5. SQL Review頁面根據需要選擇對應的操作。

    • 建立SQL Review

      單擊建立SQL Review,在建立SQL Review視窗配置如下參數後,單擊確定,發起SQL Review。

      說明

      同一個資料庫執行個體只能有一個正在執行SQL Review任務。

      參數

      說明

      SQL Review名稱

      SQL Review任務的名稱。

      選擇庫

      選擇資料庫執行個體中需要進行SQL Review的資料庫。

      診斷時間範圍

      進行診斷的時間範圍。

      說明
      • 診斷的時間必須是開啟DAS企業版後且在SQL洞察儲存時間長度範圍內。

      • 為了保證SQL Review的準確率,建議診斷的時間範圍大於24小時;最大不能超過8天,最小不能小於1小時。

      • 對同一時間的SQL,不能多次診斷。

      對比時間範圍

      進行對比的時間範圍。

      說明
      • 對比的時間必須是開啟DAS企業版後且在SQL洞察儲存時間長度範圍內。

      • 診斷時間和對比時間的長度必須一致,且不能重疊。

      • 對比時間要早於診斷時間。

      診斷內容

      診斷的內容,根據需要選擇一個或者多重專案進行診斷。

      • 索引建議

      • SQL改寫建議

      • 新增SQL

      • 失敗SQL

      • TOP SQL

      • SQL特徵分析

      • 執行變化SQL

      • TOP流量表

    • 查看SQL Review結果

      在頁面右上方選擇時間範圍,單擊查看,即可查看指定時間範圍內發起的SQL Review任務。

      說明

      選擇時間範圍時,查詢結束時間需晚於查詢開始時間,且查詢開始時間和查詢結束時間的間隔最大不能超過7天。您可以查詢資料庫執行個體6個月內的SQL Review任務。

      • 單擊操作列的詳情,可以查看該任務結果的詳細資料。具體請參見結果詳情介紹

      • 單擊操作列的下載,可以將該任務的結果下載到本地。

      • 單擊操作列的分享,可以將該任務的結果分享給具有DAS控制台許可權的使用者。

      • 單擊任務名前的加號,可以查看SQL Review任務中包含的子任務,以及每個子任務的狀態。

        單擊子任務操作列的詳情可以查看該子任務結果的詳細資料。

結果詳情介紹

  • 詳情概覽詳情概覽

  • 索引最佳化建議:單擊表名前的加號,查看建議詳情DDL語句預期收益索引最佳化建議

    • 單擊詳情,查看該索引建議的詳細資料。

    • 單擊執行DDL,執行最佳化後的DDL語句。

    • 單擊驗證最佳化效果,可以建立驗證最佳化效果任務,對索引最佳化建議進行驗證。

      說明
      • 該功能利用執行個體的備份恢複,將使用者選定的備份組複製到系統建立的新執行個體中,驗證最佳化效果,對原業務執行個體無影響。

      • 費用與執行個體恢複功能建立的新執行個體收費一致,無額外費用。

      • 完成驗證之後,您需要手動釋放系統建立的新執行個體。

      建立驗證任務

  • SQL改寫建議:查看對執行效率不高效的SQL語句提供的改寫建議。

    單擊操作列的最佳化,進入SQL診斷最佳化頁,查看最佳化後的SQL執行計畫診斷結果

    若您採納診斷建議,單擊SQL診斷最佳化頁右上方的複製,並將最佳化後的SQL粘貼到資料庫用戶端或DMS上執行,若不採納診斷建議,可直接單擊取消結束診斷。

    SQL改寫建議

  • TOP SQL:展示資源消耗TOP 10 SQL平均掃描行數TOP 10 SQL執行次數TOP 10 SQL

    • 單擊SQL ID,查看該SQL的詳情。

    • 單擊操作列的最佳化,進入SQL診斷最佳化頁,查看最佳化後的SQL執行計畫診斷結果

      若您採納診斷建議,單擊SQL診斷最佳化頁右上方的複製,並將最佳化後的SQL粘貼到資料庫用戶端或DMS上執行,若不採納診斷建議,可直接單擊取消結束診斷。

    TOP SQL

  • 新增SQL:通過對診斷時間和對比時間內SQL的對比,查看新出現的SQL。

    • 單擊SQL ID,查看該SQL的詳情。

    • 單擊操作列的最佳化,進入SQL診斷最佳化頁,查看最佳化後的SQL執行計畫診斷結果

      若您採納診斷建議,單擊SQL診斷最佳化頁右上方的複製,並將最佳化後的SQL粘貼到資料庫用戶端或DMS上執行,若不採納診斷建議,可直接單擊取消結束診斷。

    新增SQL

  • 失敗SQL:查看執行失敗的SQL。

    單擊SQL ID,查看該SQL的詳情。

    失敗SQL

  • SQL特徵分析:查看SQL特徵分析,單擊SQL模板數量,可以查看該SQL特徵的SQL模板數量詳情

    SQL模板數量詳情頁,單擊SQL ID,查看該SQL的詳情。

    SQL特徵分析

  • 執行變化SQL:按照平均掃描行數、執行次數,查看不同變化區間的SQL。

    單擊詳情,查看執行變化趨勢詳情。在執行變化趨勢詳情頁:

    • 單擊SQL ID,查看該SQL的詳情。

    • 單擊操作列的最佳化,進入SQL診斷最佳化頁,查看最佳化後的SQL執行計畫診斷結果

      若您採納診斷建議,單擊SQL診斷最佳化頁右上方的複製,並將最佳化後的SQL粘貼到資料庫用戶端或DMS上執行,若不採納診斷建議,可直接單擊取消結束診斷。

    執行變化SQL

  • 效能惡化SQL:查看對比後效能惡化的SQL。

    • 單擊SQL ID,查看該SQL的詳情。

    • 單擊操作列的最佳化,進入SQL診斷最佳化頁,查看最佳化後的SQL執行計畫診斷結果

      若您採納診斷建議,單擊SQL診斷最佳化頁右上方的複製,並將最佳化後的SQL粘貼到資料庫用戶端或DMS上執行,若不採納診斷建議,可直接單擊取消結束診斷。

    效能惡化SQL

  • TOP流量表:查看資料庫中流量TOP 100表的詳細資料。

    • 單擊表名,查看該表的欄位索引

    • 單擊相關SQL,查看該表相關SQL的詳細資料。

    TOP流量表