設定自動調整型自動回收

選取文件版本:

本頁提供 AlloyDB Omni 適應性自動回收的總覽,並說明如何設定。

真空化是重要的 PostgreSQL 資料庫維護作業。這項指令可用來回收更新或刪除的資料列所占用的儲存空間,避免資料表或索引膨脹。此外,這個程序也用於凍結交易 ID,以防止交易 ID 環繞,以及更新資料表統計資料。

如要進一步瞭解吸塵,請參閱「日常吸塵」。

為自動執行清除作業並集體更新資料表統計資料,AlloyDB Omni 支援適應性自動清除作業。可調整的自動清理功能會依據工作負載變化自動調整清理工作負載、移除無效元組,以及更新資料表統計資料。

Autovacuum 可確保應用程式交易效能穩定可靠,並防止交易 ID 環繞,維持系統的高可用性。

AlloyDB Omni 預設會啟用自動清理功能。您可以使用資料庫旗標,停用或修改 AlloyDB Omni 的自動調整 autovacuum。

優點

自動調整 autovacuum 有下列優點:

  • 自動調整資源。AlloyDB Omni 會根據工作負載的即時狀態和可用資源,自動調整 CPU、I/O、清理程序數量和清理程序的記憶體等資源,不會影響系統效能。

  • 防範交易 ID 環繞。AlloyDB Omni 會監控清理進度和交易 ID 消耗速度。必要時,AlloyDB Omni 會清理資料庫中的每個資料表,藉此限制交易 ID 消耗量,避免交易 ID 環繞錯誤。

  • 定期清理資料表。AlloyDB Omni 會根據無效元組數量和需要掃描的頁面,觸發自動清除作業。及時移除無效的元組,避免資料表或索引膨脹。

  • 自動偵測阻礙項目。AlloyDB Omni 會自動偵測阻礙因素,例如長時間執行的交易、孤立的預備交易、孤立的複製槽,並在 postgres 記錄中顯示類似下列的警告訊息:

    Found a backend process PROCESS_ID with a long running transaction whose transaction
    id age AGE is larger than or equal to the transaction age threshold AGE_THRESHOLD.
    

設定自動調整型自動回收

根據預設,AlloyDB Omni 會啟用適應性自動回收功能。如要停用自動調整清理功能,請將執行個體的 enable_google_adaptive_autovacuum 資料庫旗標設為 off。

AlloyDB Omni 支援多個與清理和自動清理相關的標準 PostgreSQL 資料庫旗標,例如 vacuum_cost_delay 和 autovacuum_vacuum_cost_delay。您不需要在這些旗標中設定值,自動調整自動清理功能就能運作,因為這項功能會根據實際工作負載調整及最佳化行為。如果您在這些旗標中設定值,自動調整自動清理功能會調整行為,將您的偏好設定納入考量。

如要查看與 vacuum 和 autovacuum 相關、支援的 PostgreSQL 資料庫旗標完整清單,請參閱「vacuum 旗標」和「autovacuum 旗標」。