本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用專用日誌磁碟區 (DLV)
您可以針對使用佈建 IOPS (PIOPS) 儲存體的資料庫執行個體使用專用日誌磁碟區 (DLV)。DLV 會將 PostgreSQL 資料庫交易日誌和 MySQL/MariaDB 重做日誌和二進位日誌移至與包含資料庫資料表的磁碟區分開的儲存磁碟區。DLV 使交易寫入記錄更有效率且一致。DLV 非常適合具有大型配置儲存體、每秒高 I/O (IOPS) 需求或延遲敏感工作負載的資料庫。
PIOPS 儲存體 (io1 和 io2 Block Express) 支援 DLVs,並以固定大小 1,024 GiB 和 3,000 個佈建 IOPS 建立。
Amazon RDS 支援 AWS 區域 下列版本的所有 DLVs:
MariaDB 10.6.7 和更新的 10 版本
MySQL 8.0.28 和更新的 8.0 版本、MySQL 8.4.3 和更新的 8.4 版本
PostgreSQL 13.10 和更新的 13 版本、14.7 和更新的 14 版本,以及 15.2 和更新的 15 版本
RDS 支援 DLV 搭配多可用區部署。當您修改或建立多可用區域執行個體時,會同時為主要執行個體和次要執行個體建立 DLV。
RDS 支援 DLV 搭配僅供讀取複本。如果主要資料庫執行個體已啟用 DLV,則在啟用 DLV 之後建立的所有僅供讀取複本也將具有 DLV。在切換到 DLV 之前建立的任何僅供讀取複本將不會啟用它,除非明確修改為要這樣做。建議在啟用 DLV 之前附加至主要執行個體的所有僅供讀取複本,您也須將其手動修改為具有 DLV。
注意
對於 5 TiB 或更高的資料庫組態,我們建議使用 DLVs。
如需 DLVs 優點的詳細資訊,請參閱下列部落格文章:
如需每個資料庫引擎可用的已配置儲存體、佈建 IOPS、儲存體輸送量的範圍相關資訊,請參閱 佈建 IOPS SSD 儲存體。
啟用和停用 DLV 時的考量事項
啟用和停用 DLV 可能會耗時,並導致停機。程序涉及在啟用時將所有交易日誌或重做和二進位日誌 (取決於資料庫引擎) 複製到新磁碟區,或在停用時回到原始儲存體。此操作的持續時間會受到幾個因素的影響:
-
交易日誌的數量:
-
具有更多交易的大型資料庫會產生更多日誌,增加複製所需的時間。
-
如果複寫槽處於非作用中狀態或複寫延遲,則交易日誌可能會累積在主要資料庫執行個體上,從而增加複製所需的時間。請確定複寫是最新的,並移除任何不必要的插槽。
-
-
儲存組態:
-
資料庫執行個體 EBS 頻寬 – 頻寬越高,資料傳輸速度越快。
-
佈建 IOPS 的數量 – 每秒更多的輸入/輸出操作 (IOPS) 可以加快複製程序。
-
-
資料庫活動 – 組態期間高層級的資料庫活動可能會拖慢程序。
為了將停機時間降至最低,我們建議您在活動或維護時段不足期間規劃和排程。
當您建立資料庫執行個體時啟用 DLV
您可以使用 AWS Management Console AWS CLI或 RDS API 來建立已啟用 DLV 的資料庫執行個體。
在新的資料庫執行個體上啟用 DLV
登入 AWS Management Console ,並在 https://console.aws.amazon.com/rds/
:// 開啟 Amazon RDS 主控台。 -
選擇建立資料庫。
-
在建立資料庫執行個體頁面上,選擇支援 DLV 的資料庫引擎。
-
對於儲存:
-
選擇佈建 IOPS SSD (io1) 或佈建 IOPS SSD (io2)。
-
輸入您想要的已配置儲存和佈建 IOPS。
-
展開專用日誌磁碟區,然後選取開啟專用日誌磁碟區。
-
-
視需要選擇其他設定。
-
選擇建立資料庫。
建立資料庫之後,專用日誌磁碟區的值會出現在資料庫詳細資訊頁面的組態索引標籤上。
若要在使用佈建 IOPS 儲存體建立資料庫執行個體時啟用 DLV,請使用 AWS CLI 命令 create-db-instance。設定下列參數:
-
--dedicated-log-volume
– 啟用專用日誌磁碟區。 -
--storage-type
– 將佈建 IOPS 設為io2
io1
或 。 -
--allocated-storage
– 要配置給資料庫執行個體的儲存量 (以 GiB 為單位)。 -
--iops
– 資料庫執行個體的佈建 IOPS 數量,以每秒 I/O 操作表示。
若要在使用佈建 IOPS 儲存體建立資料庫執行個體時啟用 DLV,請使用 Amazon RDS API 操作 CreateDBInstance。設定下列參數:
-
DedicatedLogVolume
– 設定為true
以啟用專用日誌磁碟區。 -
StorageType
– 將佈建 IOPS 設為io2
io1
或 。 -
AllocatedStorage
– 要配置給資料庫執行個體的儲存量 (以 GiB 為單位)。 -
Iops
– 資料庫執行個體的 IOPS 速率,以每秒 I/O 操作表示。
在現有資料庫執行個體上啟用 DLV
您可以使用 AWS Management Console AWS CLI或 RDS API 來修改資料庫執行個體以啟用 DLV。
修改資料庫執行個體的 DLV 設定後,您必須重新啟動資料庫執行個體。
在現有資料庫執行個體上啟用 DLV
登入 AWS Management Console 並開啟位於 https://https://console.aws.amazon.com/rds/
的 Amazon RDS 主控台。 -
在導覽窗格中,選擇 Databases (資料庫)。
若要篩選資料庫執行個體清單,請在 Filter databases (篩選資料庫) 中輸入文字字串,供 Amazon RDS 用來篩選結果。只有名稱中包含此字串的資料庫執行個體會顯示出來。
-
選擇具有您要修改之佈建 IOPS 儲存體的資料庫執行個體。
-
選擇 Modify (修改)。
-
在修改資料庫執行個體頁面上:
-
對於儲存,展開專用日誌磁碟區,然後選取開啟專用日誌磁碟區。
-
-
選擇繼續。
-
選擇立即套用以立即將變更套用至資料庫執行個體。或選擇 Apply during the next scheduled maintenance window (在下一個排定的維護時段套用) 在下個維護時段套用變更。
-
檢閱要變更的參數,並選擇 Modify DB instance (修改資料庫執行個體) 以完成修改。
專用日誌磁碟區的新值會顯示在資料庫詳細資訊頁面的組態索引標籤上。
若要使用佈建 IOPS 儲存體在現有資料庫執行個體上啟用或停用 DLV,請使用 AWS CLI 命令 modify-db-instance
。設定下列參數:
-
--dedicated-log-volume
– 啟用專用日誌磁碟區。使用
--no-dedicated-log-volume
(預設值) 停用專用日誌磁碟區。 -
--apply-immediately
– 使用--apply-immediately
立即套用變更。使用
--no-apply-immediately
(預設值) 在下個維護時段套用變更。
若要使用佈建 IOPS 儲存體,在現有資料庫執行個體上啟用或停用 DLV,請使用 Amazon RDS API 操作 ModifyDBInstance
。設定下列參數:
-
DedicatedLogVolume
– 將此選項設定為true
以啟用專用日誌磁碟區。將此選項設定為
false
以停用專用日誌磁碟區。這是預設值。 -
ApplyImmediately
– 將此選項設為True
立即套用變更。將此選項設為
False
(預設值) 在下個維護時段套用變更。
監控 DLV 儲存體
您可以使用 CloudWatch 中的 FreeStorageSpaceLogVolume
指標來監控 DLV 儲存用量。
您可以使用 RDS for PostgreSQL 的下列查詢來尋找交易日誌佔用的大小:
SELECT pg_size_pretty(COALESCE(sum(size), 0)) AS total_wal_generated_size FROM pg_catalog.pg_ls_waldir();
如果 DLV 儲存空間不足,資料庫執行個體將進入 storage-full
狀態,導致停機。