建立建議的評估

在 Database Center 中使用評估功能,評估及測試資料庫建議對效能的影響,再將建議套用至實際執行環境的資料庫機群。

為評估建議,評估作業會執行下列作業:

  • 複製資料庫執行個體。

  • 對副本執行基準化模擬測試。

  • 比較複製廣告活動的基準成效,以及套用建議設定變更後的成效。

支援的產品和建議

Database Center 評估僅適用於 PostgreSQL 適用的 Cloud SQL 執行個體。

您可以評估下列類型的建議:

  • 運算資源擴充:評估將執行個體調整為具有更多 vCPU 或記憶體的機器類型,會造成哪些影響。

  • 版本升級:評估從 Cloud SQL Enterprise 版遷移至 PostgreSQL 適用的 Cloud SQL Enterprise Plus 版,對效能造成的影響。詳情請參閱「將執行個體就地升級為 Cloud SQL Enterprise Plus 版本」。

  • 啟用資料快取:分析啟用資料快取對延遲和輸送量的影響。

事前準備

執行建議評估前,請先確認你符合下列規定:

  • 啟用 API:啟用下列 API:

    如要啟用 API,請參閱「啟用及停用 API」。

  • 資料庫連線憑證:您必須提供目標資料庫名稱和資料庫使用者名稱。

  • Secret Manager 密鑰:您必須將資料庫使用者名稱的密碼儲存在全域 Secret Manager 密鑰中,並知道密鑰名稱,才能在密鑰挑選器中搜尋該密鑰。如果清單中未顯示密鑰,才需要提供完整密鑰路徑。如要進一步瞭解如何建立密鑰,請參閱「建立及存取密鑰」。

  • 服務帳戶:為環境設定身分與存取權管理 (IAM) 服務帳戶,以便評估及比較基準效能與建議變更。這個服務帳戶需要權限,才能從 Secret Manager 讀取資料庫憑證密鑰,以及在 Cloud Run 中協調基準化工作。如要設定服務帳戶,請參閱「建立服務帳戶」。

  • IAM 權限:您必須具備必要的 IAM 權限,才能啟動及管理測試程序。詳情請參閱「必要 IAM 權限」。

評估最佳化建議

請按照下列步驟評估及測試建議:

  1. 前往 Google Cloud 控制台的「Database Center」(資料庫中心) 頁面。

    前往 Database Center

  2. 按一下導覽選單中的「評估」

  3. 找出 PostgreSQL 適用的 Cloud SQL 執行個體支援的建議

  4. 在該建議的「影響」欄中,按一下「評估影響」

    如果尚未啟用必要的 API,請按照面板中的指引啟用。

  5. 在「評估詳細資料」頁面的設定面板中,輸入下列連線詳細資料:

    1. 在「Database」(資料庫) 中輸入資料庫名稱。有效選項對應至 Cloud SQL 執行個體「資料庫」頁面中列出的資料庫。

    2. 在「Username」(使用者名稱) 中輸入資料庫使用者名稱。

    3. 在「密碼密鑰」中,選取包含資料庫使用者密碼的 Secret Manager 密鑰。

      如果清單中未顯示該 Secret,請以 projects/PROJECT_ID/secrets/SECRET_NAME 格式手動輸入 Secret 路徑。將 PROJECT_ID 替換為專案 ID,並將 SECRET_NAME 替換為密鑰名稱。根據預設,Database Center 會使用最新版的 Secret。您可以選擇在路徑中附加 /versions/VERSION,並將 VERSION 替換為 Secret 版本,藉此指定版本。

    4. 在「服務帳戶」中,選取要用於執行基準化作業的服務帳戶。

  6. 按一下「生成測試計畫」。生成計畫需要幾分鐘的時間。

    Database Center 會產生測試計畫預覽畫面,顯示複製資料庫、執行 pgbench 工作負載、套用建議及分析效能的步驟順序。

    Database Center 生成計畫時,會在「Assessments」(評估) 頁面列出工作階段。您可以放心離開這個頁面,稍後再返回工作階段。

  7. 如要修正測試計畫,請在「測試說明」欄位中輸入說明 (例如 Change the benchmark duration to 60 seconds),然後按一下「更新測試計畫」

  8. 按一下「開始評估」。在確認對話方塊中,查看帳單通知。在專案中,佈建複製的執行個體和執行基準測試工作會產生費用

    評估工作階段的有效時間為 48 小時。 Database Center 會在評估完成後,自動刪除複製的執行個體。如果評估失敗,系統不會自動刪除複製的執行個體,您必須手動刪除

  9. 按一下「確認」即可開始評估。評估程序需要一些時間才能完成。

    Database Center 會顯示評估進度。工作階段在背景執行時,您可以放心離開頁面。

查看評估記錄和報表

追蹤評估工作階段,管理評估並查看成效比較報表。Database Center 會保留工作階段報表和中繼資料 48 小時,並顯示每個工作階段的到期倒數計時。

  1. 前往 Google Cloud 控制台的「Database Center」頁面。

    前往 Database Center

  2. 在導覽選單中,按一下「評估」

  3. 在工作階段清單中,按一下工作階段的「工作階段 ID」,即可查看詳細資料。

    下表說明評估工作階段狀態、每個狀態顯示的資訊,以及可執行的動作:

    狀態 顯示的資訊 可執行的動作
    規劃階段 測試計畫詳細資料和預覽畫面。 使用「測試說明」 欄位修正測試計畫預覽畫面,或按一下「開始評估」開始評估。
    評估階段 評估進度和評估使用的測試計畫。 按一下「取消」即可取消評估。
    已完成 摘要:比較套用建議前後的資料庫效能。
    已取消 取消評估前的進度。
    產生作業失敗 無法生成測試計畫,您可以查看測試計畫詳細資料和設定欄位 (例如資料庫名稱和密碼名稱),然後重試產生測試計畫。 更新評估設定,例如資料庫名稱和使用者名稱,然後重試產生測試計畫。
    評估失敗 無法評估建議,您可以查看錯誤訊息和評估失敗前的進度。

取消工作階段或清除失敗的工作階段

如果取消進行中的評估工作階段,或執行失敗,請確認所有暫時資源都已移除。由於 Database Center 無法在失敗或取消後確認清理作業是否成功,請檢查並刪除所有失敗和取消工作階段的剩餘資料庫複製執行個體。

  • 取消課程:在「評估」頁面中,按一下要取消的評估作業課程 ID,然後按一下「取消」。如要取消工作階段,工作階段 ID 的狀態必須為「評估階段」

  • 清理複製的資源

    如要手動刪除複製的執行個體,請按照下列步驟操作:

    1. 前往 Google Cloud 控制台的「Cloud SQL Instances」頁面。

      前往 Cloud SQL 執行個體

    2. 在執行個體清單中,找出複製的執行個體。您可以使用工作階段詳細資料頁面顯示的資源連結,識別複製的項目。

    3. 按一下複製執行個體旁的「更多動作」圖示 ,然後按一下「刪除」

    4. 在確認對話方塊中輸入複製執行個體名稱,然後按一下「Delete」(刪除)

必要 IAM 權限

您必須具備特定權限,才能啟動及管理測試程序。 如要取得這些權限,請指派預先定義的角色,或建立具有個別權限的自訂角色。

如要管理存取權及瞭解角色,請參閱「使用 IAM 控管存取權」。

終端使用者的權限

下表列出使用者帳戶需要的權限,以及包含這些權限的預先定義角色:

所需權限 預先定義的角色
cloudsql.instances.patch
cloudsql.instances.clone
cloudsql.instances.delete
cloudsql.instances.get
cloudsql.instances.createTestingAgentSession
cloudsql.instances.getAgentSession
cloudsql.instances.listAgentSessions
cloudsql.instances.cancelAgentSession
roles/cloudsql.admin
run.jobs.create
run.jobs.run
roles/run.developer
logging.logEntries.list roles/logging.viewer
secretmanager.secrets.list roles/secretmanager.viewer
serviceusage.services.use roles/serviceusage.serviceUsageConsumer
monitoring.monitoredResourceDescriptors.list (選填) roles/monitoring.viewerroles/viewer

如要在評估結果頁面查看圖表資料,使用者帳戶必須具備 monitoring.monitoredResourceDescriptors.list 權限。建議授予這項權限,但執行建議評估時並非必要。

啟動評估的使用者也必須具備所選服務帳戶的「服務帳戶使用者」角色 (roles/iam.serviceAccountUser) 或 iam.serviceAccounts.actAs 權限。

Cloud Run 服務帳戶的權限

下表列出 Cloud Run 作業使用的服務帳戶所需權限,以及包含這些權限的預先定義角色:

所需權限 預先定義的角色
cloudsql.instances.connect roles/cloudsql.client
cloudsql.instances.login roles/cloudsql.instanceUser
secretmanager.versions.access roles/secretmanager.secretAccessor

限制

使用建議評估功能時,請注意下列限制:

  • 僅供參考的報表:評估不會對正式版資料庫套用修改。如果對基準化結果感到滿意,請使用 PostgreSQL 適用的 Cloud SQL 控制台或 PostgreSQL 適用的 Cloud SQL API,手動套用建議。

  • 48 小時後到期:資料庫中心只會在工作階段儲存空間保留工作階段報表和中繼資料 48 小時,之後就會刪除。

  • 單一使用者隔離:只有建立驗證工作階段的使用者可以查看。專案中的其他負責人無法查看您的工作階段記錄或結果。

  • 全域密鑰位置:包含資料庫密碼的 Secret Manager 密鑰必須是全域密鑰。系統不支援區域性密鑰。

帳單

評估建議時,您使用的資源會產生費用。系統會在專案中建立資料庫執行個體的副本,您需要為這個副本付費。Database Center 會在評估完成後自動刪除副本。如果評估失敗或取消,您必須手動刪除複製內容,以免持續產生費用。

此外,資料庫代理程式會使用其他 Google Cloud 基礎架構,可能產生費用,包括:

  • Cloud SQL:適用於複製的執行個體。詳情請參閱「Cloud SQL 定價」。
  • Cloud Run:執行評估代理程式。詳情請參閱「Cloud Run 定價」一文。
  • 其他服務:用於協調評估的其他服務會產生少量費用。

您只需為評估作業的執行時間付費。

後續步驟