關於查詢洞察

如要偵測、診斷及預防 AlloyDB for PostgreSQL 資料庫的查詢效能問題,可以使用查詢洞察。查詢洞察提供監控和診斷資訊,協助您找出叢集和執行個體效能瓶頸的根本原因。如要開始使用,請參閱「使用查詢洞察提高查詢效能」。

有了查詢洞察,您就能監控應用程式層級的效能,並依模型、檢視畫面、控制器、路徑、使用者和主機,追蹤整個應用程式堆疊中有問題的查詢來源。查詢洞察工具可使用開放標準和 API,與現有的應用程式監控 (APM) 工具和 Google Cloud服務整合。這樣一來,您就能使用偏好的工具監控及排解查詢問題。

您可以在查詢洞察資訊主頁查看查詢指標。資訊主頁提供一系列篩選器,可協助您依使用者、資料庫、IP 位址、日期範圍、CPU 容量、CPU 和 CPU 等待時間、IO 等待時間和鎖定等待時間,查看查詢的資料庫負載。

使用查詢洞察的好處

查詢洞察提供監控和診斷功能,可讓您偵測及修正查詢效能問題。查詢洞察資訊主頁可協助您及早找出查詢效能問題,並透過單一介面從偵測問題到解決問題。內建的視覺化查詢計畫可協助您排解問題,找出根本原因。您也可以使用情境式端對端應用程式追蹤功能,找出有問題的查詢來源。

查詢洞察可讓您使用與查詢相關聯的商業邏輯 (例如付款、庫存、業務分析或運送) 標記查詢,以便從以應用程式為中心的角度監控查詢效能。此外,查詢洞察功能也提供以應用程式為中心的監控功能,協助您診斷使用物件關聯對應 (ORM) 建構的應用程式效能問題。查詢洞察工具使用開放原始碼程式庫 SQL Commenter,自動檢測 ORM。這項檢測功能可協助您找出造成問題的應用程式程式碼。

查詢洞察可與現有的 APM 工具整合,讓您使用偏好的工具監控及排解查詢問題。查詢洞察支援 OpenCensus 和 OpenTelemetry 標準,並透過 Google Cloud Observability API,將查詢指標和追蹤記錄資料提供給 APM 工具。查詢洞察與 Cloud Monitoring 整合,可讓您建立自訂資訊主頁和查詢指標或標記的快訊,並透過電子郵件、簡訊、Slack、PagerDuty 等管道接收通知。

定價

這項功能不會產生額外費用。您可以在查詢洞察資訊主頁上存取一週的資料。如要瞭解 API 要求,請參閱 Cloud Monitoring 定價。Cloud Monitoring 提供免付費方案。

安全性

可存取 AlloyDB 資訊主頁的使用者,能在查詢洞察資訊主頁存取查詢洞察指標。

查詢洞察指標會經過靜態資料加密。

隱私權

查詢洞察只會儲存及顯示正規化查詢。查詢字串中的所有常數值都會移除。查詢計畫追蹤記錄不會收集或儲存任何常數值。根據預設,查詢洞察會收集 IP 位址和標記資訊。

效能

查詢洞察的 PostgreSQL 擴充功能會記錄查詢指標和執行計畫,這些計畫是使用 postgres 鉤子實作。指標和執行計畫會以 Postgres 資料表的形式,儲存在共用記憶體資料表中。由於避免使用昂貴的磁碟 I/O 作業,查詢洞察功能會持續啟用,且預期效能負擔較小。查詢洞察會使用 12 MB 的 RAM,預設查詢字串大小為 1024 個位元組。RAM 用量會隨著查詢字串大小增加而增加。查詢完成後,指標應會在幾分鐘內顯示在查詢洞察中。

儲存空間

查詢洞察不會占用 AlloyDB 執行個體的儲存空間。指標會儲存在 Cloud Monitoring 的系統指標中。請務必詳閱 Cloud Monitoring 資料保留政策。

查詢洞察追蹤記錄會儲存在 Cloud Trace。請務必詳閱 Cloud Trace 資料保留政策。

相容性

所有 AlloyDB 機型都支援查詢洞察,且所有 Google Cloud Platform 區域都提供這項功能。

限制

查詢洞察的限制如下:

  • 啟用用戶端 IP 位址追蹤功能後,如果有多個用戶端 (例如超過 100 個) 將流量傳送至執行個體,查詢洞察會擷取累計執行時間最長的用戶端位址。因此,系統可能會省略與其他用戶端位址相關的統計資料。

  • 啟用用戶端 IP 位址追蹤功能後,用戶端位址流量的變化可能會導致指標暫時出現落差,因為系統需要時間匯出新的熱門用戶端位址。舉例來說,視架構而定,用戶端重新啟動或重新建立 (例如 Kubernetes Pod 從不同機器傳送流量),可能會導致這項落差。

後續步驟