本頁面將概要介紹查詢洞察工具。如要立即開始使用這項工具,請參閱「使用查詢洞察功能提升查詢效能」。
查詢洞察功能可協助您偵測、診斷及預防 AlloyDB 資料庫的查詢效能問題。這些工具提供自助式直覺化監控功能和診斷資訊,協助您在偵測到效能問題後,進一步找出根本原因。
透過查詢洞察,您可以監控應用程式層級的效能,並依模型、檢視畫面、控制器、路徑、使用者和主機,追蹤應用程式堆疊中問題查詢的來源。查詢洞察工具可使用開放標準和 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 平台區域皆可使用。
限制
查詢洞察的限制如下:
啟用用戶端 IP 位址追蹤功能後,如果大量用戶端 (例如超過 100 個) 將流量傳送至執行個體,查詢洞察會擷取累計執行時間最長的用戶端位址。因此,系統可能會省略與其他用戶端位址相關的統計資料。
啟用追蹤用戶端 IP 位址後,用戶端位址流量的變化可能會導致指標暫時出現落差,因為匯出新的熱門用戶端位址需要時間。舉例來說,如果架構允許 Kubernetes Pod 從不同機器傳送流量,用戶端重新啟動或重新建立 (例如 Kubernetes Pod 從不同機器傳送流量) 就可能導致這個間隙。