運用 AI 輔助功能排解查詢速度緩慢的問題

本文件說明如何使用 Cloud SQL 的 AI 輔助功能,排解 Cloud SQL 中執行速度緩慢的查詢問題。您可以使用 Cloud SQL 和 Gemini Cloud Assist 的 AI 輔助功能,進行調查、分析、取得最佳化建議,並最終實作這些最佳化建議,以便在 Cloud SQL 中最佳化查詢。

事前準備

如要使用 AI 協助排解查詢速度緩慢的問題,請按照下列步驟操作:

  1. 查看 AI 輔助疑難排解機制的限制
  2. 啟用 AI 輔助的疑難排解機制

必要角色和權限

如要瞭解使用 AI 協助工具排解查詢速度緩慢問題時所需的角色和權限,請參閱「使用 AI 觀察及排解問題」。

使用 AI 輔助功能

如要使用 AI 協助排解查詢速度緩慢的問題,請前往 Google Cloud 主控台的 Cloud SQL 執行個體查詢洞察資訊主頁。

「熱門查詢」表格

您可以透過「查詢洞察」資訊主頁的「主要查詢表」部分,利用 AI 協助排解查詢速度緩慢的問題。

Cloud SQL 可協助您找出在特定偵測時間範圍內,哪些查詢的執行速度低於平均值。在「查詢洞察」資訊主頁中選取時間範圍後,Cloud SQL 會使用所選時間範圍結束前 24 小時的偵測時間,檢查是否有任何查詢的效能低於平均值。

調整「資料庫負載」圖表的時間範圍篩選器,或任何其他篩選器 (例如資料庫或使用者) 時,Cloud SQL 會重新整理「前幾項查詢表」,並根據新的查詢清單和更新的偵測時間範圍重新執行異常偵測。

查詢洞察資料庫負載圖表

當 Cloud SQL 偵測到異常情況時,您只要點選「Analyze latency」(分析延遲時間),Cloud SQL 就會針對查詢執行基準效能分析。Cloud SQL 會將異常期間的指標對應至執行速度緩慢的查詢,並搜尋可能導致效能緩慢的情況。如果 Cloud SQL 發現潛在問題,就會讓您查看相關證據。最後,Cloud SQL 會提供建議,協助您修正及改善查詢效能。

如要針對查詢深入分析資訊主頁的「Top queries」表格中的慢速查詢進行疑難排解,請按照下列步驟操作:

  1. 前往 Google Cloud 控制台的「Cloud SQL 執行個體」頁面。

    前往 Cloud SQL 執行個體

  2. 如要開啟執行個體的「總覽」頁面,請按一下執行個體名稱。
  3. 在 SQL 導覽選單中,按一下「查詢洞察資料」
  4. 在「已執行的查詢」圖表中,使用「時間範圍」篩選器選取 1 小時、6 小時、1 天、7 天、30 天或自訂範圍。
  5. 在「熱門查詢」表格中,查看資料庫的查詢清單。
  6. 如果查詢的「平均執行時間」旁邊顯示「分析延遲時間」,表示 Cloud SQL 偵測到查詢效能異常。Cloud SQL 會在所選時間範圍結束前的 24 小時內,檢查是否有異常現象。
  7. 按一下「分析延遲時間」,即可開始使用 AI 輔助功能排解問題。系統會產生「分析查詢延遲時間」頁面。
  8. 如果沒有任何查詢顯示「平均執行時間」旁的「分析延遲時間」,可能是因為下列原因:

查詢詳細資料

您也可以在「查詢詳細資料」頁面中,透過 AI 協助排解查詢速度緩慢的問題。

  1. 前往 Google Cloud 控制台的「Cloud SQL 執行個體」頁面。

    前往 Cloud SQL 執行個體

  2. 如要開啟執行個體的「總覽」頁面,請按一下執行個體名稱。
  3. 按一下「查詢洞察」,開啟「查詢洞察」資訊主頁。
  4. 在「查詢深入分析」資訊主頁中,按一下要查看的「熱門查詢」中所列的查詢。「查詢詳細資料」頁面隨即顯示。
  5. 如果 Cloud SQL 偵測到查詢異常,查詢詳細資料頁面會顯示一或多個下列指標:
    • 詳細資料畫面上顯示「This query is slower than usual」訊息,以及「分析查詢效能」選項。
    • 顯示查詢速度緩慢訊息和「分析查詢效能」選項的「查詢詳細資料」畫面
    • 「查詢延遲時間」圖表中顯示「Query slower than usual」訊息。如果畫面顯示這則訊息,請按一下「分析」,開始使用 AI 協助排解問題。系統會產生「分析查詢延遲時間」頁面。
    • 查詢延遲時間圖表,其中包含慢速查詢訊息和「分析」選項
  6. 選用:使用時間範圍篩選器選取 1 小時、6 小時、1 天、7 天、30 天或自訂範圍。調整「查詢詳細資料」頁面的時間範圍篩選器,或任何其他篩選器 (例如「資料庫」或「使用者」) 時,Cloud SQL 會重新執行異常偵測。
  7. 如果 Cloud SQL 未偵測到查詢異常,您仍可按一下「Analyze query performance」,對查詢執行分析。這會產生「分析查詢延遲時間」頁面。

分析查詢延遲時間

您可以使用 AI 協助功能,分析及排解查詢延遲的詳細問題。

在「分析查詢延遲時間」頁面中,您可以查看查詢和查詢文字的下列詳細資料:

查詢分析資訊畫面

這個頁面還提供延遲圖表,顯示所選時間範圍內的 P95 和 P99 延遲值。P95 和 P99 線條顯示 95% 和 99% 的查詢使用者遇到所示查詢延遲時間。就 P95 而言,5% 的使用者會遇到較高的延遲時間,而 P99 則只有 1% 的使用者會遇到較高的延遲時間。您可以查看這張圖表,瞭解查詢延遲時間大幅增加的特定時間範圍。

顯示 P95 和 P99 延遲時間值的查詢延遲時間圖表

資料分析時間範圍

分析時間範圍包含您在查詢深入分析資訊主頁或「查詢詳細資料」頁面中,選取的資料庫負載圖表時間範圍結束時間前 24 小時。Cloud SQL 會使用這個時間範圍,比較基準指標與異常情況發生期間擷取的指標。

如果 Cloud SQL 在「查詢詳細資料」頁面中偵測到查詢異常,您從「查詢洞察」資訊主頁中選取查詢後,Cloud SQL 就會使用異常結束後的最後 24 小時,為查詢執行基準效能分析。如果 Cloud SQL 未偵測到查詢異常,並再次對查詢執行異常偵測,則 Cloud SQL 會使用所選時間範圍結束前 48 小時的效能基準線,做為分析時間範圍的效能基準線。

偵測到異常狀況的期間

偵測到異常狀況的期間代表 Cloud SQL 發現查詢效能異常變化的時間範圍。Cloud SQL 會使用在分析期間為查詢量測到的基準效能。

如果 Cloud SQL 在所選時間範圍內偵測到查詢的異常值超過一個,則會使用最後偵測到的異常值。

情況

開始調查後,Cloud SQL 會分析您的查詢和任何歷來資料,並嘗試找出可能導致所選時間範圍內查詢效能變慢的潛在情況。

舉例來說,如果查詢速度緩慢,可能會歸因於鎖定爭用

在識別這類特殊情況時,Cloud SQL 偵測到這項查詢的資料列鎖定等待時間異常增加。Cloud SQL 也會列出其他可能沒有偵測到異常的情況,讓您排除這些情況為可能的根本原因。

慢速查詢的分析結果,包括情況和證據

證據

針對每種情況,Cloud SQL 都會提供一份證據清單,以支持這項判定。Cloud SQL 會根據從執行個體、資料庫和查詢的歷來執行記錄收集到的指標,建立證據。

針對每種情況提供的證據,反映 Cloud SQL 在偵測期間內偵測到的任何異常查詢。Cloud SQL 將指標超過特定門檻或符合特定條件視為異常。

在這個例子中,為了支援鎖定爭用的情況,您可能會看到下列證據:

  • 鎖定等待時間:查詢執行期間的資料列鎖定等待時間增加 7782.49%。

您可以根據證據詳細資料,決定哪些建議最適合導入。

建議

根據分析的所有情況,Cloud SQL 會提供一或多項可行建議,協助您解決查詢效能緩慢的問題。Cloud SQL 會提供建議,並附上成本效益分析,讓您可以根據資訊做出是否採用建議的決定。

舉例來說,您可能會收到下列最佳化建議:

針對 MySQL 的慢查詢提供最佳化建議,並附上進一步瞭解的連結。

  • 查看並行查詢:查看並行查詢,找出鎖定爭用情形,這多半發生在資料修改查詢 (INSERT、UPDATE、DELETE 等 DML)。

    如要開始實作第一項建議,請按一下「瞭解詳情」,瞭解如何在「查詢洞察」資訊主頁中查看並行查詢。詳情請參閱「監控有效查詢」。

如果您想繼續進行疑難排解,或需要進一步瞭解查詢效能,也可以開啟 Gemini Cloud Assist。詳情請參閱「使用 AI 協助功能觀察及排解問題」。

如果您想繼續進行疑難排解,或需要進一步瞭解查詢效能,也可以開啟 Gemini Cloud Assist。詳情請參閱「使用 AI 協助功能觀察及排解問題」。

後續步驟