Neptune 中的資料庫複製 - Amazon Neptune

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Neptune 中的資料庫複製

使用資料庫複製,您可以快速且經濟實惠地在 Amazon Neptune 中建立所有資料庫的複本。複製資料庫在第一次建立時只需最少的額外空間。資料庫複製使用寫入時複製通訊協定。無論在來源資料庫或複製資料庫上,在資料變更時會複製資料。您可以從相同的資料庫叢集建立多個複製。您也可以從其他複製建立額外的複製。如需複製時寫入通訊協定如何在 Neptune 儲存體內容中運作的詳細資訊,請參閱 寫入時複製通訊協定

您可以在各種使用案例中使用資料庫複製,尤其是您不想要對生產環境產生影響的使用案例,如下所示:

  • 實驗並評估變更的影響,例如結構描述變更或參數群組變更。

  • 執行工作負載密集的操作,例如匯出資料或執行分析查詢。

  • 在非生產環境中建立生產資料庫叢集的副本,以進行開發或測試。

使用 AWS Management Console 建立資料庫叢集複本
  1. 登入 AWS 管理主控台,然後開啟位於 https://console.aws.amazon.com/neptune/home 的 Amazon Neptune​ 主控台。

  2. 在導覽窗格中,選擇 Instances (執行個體)。選擇您要建立其複製之資料庫叢集的主要執行個體。

  3. 選擇 Instance actions (執行個體動作),然後選擇 Create clone (建立複製)

  4. Create Clone (建立複製) 頁面上,輸入複製資料庫叢集主要執行個體的名稱,做為 DB instance identifier (資料庫執行個體識別符)

    如果想要的話,請對複製資料庫叢集設定任何其他設定。如需不同資料庫叢集設定的詳細資訊,請參閱 使用主控台啟動

  5. 選擇 Create Clone (建立複製) 來啟動複製資料庫叢集。

使用 AWS CLI 建立資料庫叢集複本
  • 呼叫 Neptune restore-db-cluster-to-point-in-time AWS CLI 命令並提供下列值:

    • --source-db-cluster-identifier – 要建立其複製的來源資料庫叢集的名稱。

    • --db-cluster-identifier – 複製資料庫叢集的名稱。

    • --restore-type copy-on-writecopy-on-write 值指出應該建立複製資料庫叢集。

    • --use-latest-restorable-time – 這會指定應使用最新可還原的備份時間。

    注意

    restore-db-cluster-to-point-in-time AWS CLI 命令只會複製資料庫叢集,而不會還原該資料庫叢集的資料庫執行個體。

    下列 Linux/UNIX 範例會從 source-db-cluster-id 資料庫叢集建立複本,並將複本命名為 db-clone-cluster-id

    aws neptune restore-db-cluster-to-point-in-time \ --region us-east-1 \ --source-db-cluster-identifier source-db-cluster-id \ --db-cluster-identifier db-clone-cluster-id \ --restore-type copy-on-write \ --use-latest-restorable-time

    如果 \ 行尾逸出字元取代為 Windows ^ 對等字元,則相同的範例適用於 Windows:

    aws neptune restore-db-cluster-to-point-in-time ^ --region us-east-1 ^ --source-db-cluster-identifier source-db-cluster-id ^ --db-cluster-identifier db-clone-cluster-id ^ --restore-type copy-on-write ^ --use-latest-restorable-time

限制

Neptune 中的資料庫複製具有下列限制:

  • 您無法跨 AWS 區域建立複製資料庫。複製資料庫必須建立在與來源資料庫相同的區域中。

  • 複製的資料庫永遠都會使用 Neptune 引擎版本的最新修補程式,而此引擎版本是由從其複製的資料庫所使用。即使來源資料庫尚未升級至該修補程式版本,也是如此。但是,引擎版本本身不會改變。

  • 目前,您最多可在 Neptune DB 叢集的每個複本進行 15 次複製,包括以其他複製為基礎的複製。在達到該限制之後,您必須製作另一個資料庫副本,而不是複製它。不過,如果您建立新副本,最多也可以有 15 個複製。

  • 目前不支援跨帳戶資料庫複製。

  • 您可以提供不同的 virtual private cloud (VPC) 進行複製。不過,那些 VPC 中的子網路必須映射至相同的可用區域集。

用於資料庫複製的寫入時複製通訊協定

下列範例說明寫入時複製協定的運作方式。

複製之前的 Neptune 資料庫

來源資料庫中的資料存放於頁面。在下圖中,來源資料庫有四個頁面。

Neptune 來源資料庫,在資料庫複製之前有 4 頁。

複製之後的 Neptune 資料庫

如下圖所示,在資料庫複製之後,來源資料庫中沒有任何變更。來源資料庫與複製資料庫都指向相同的四個頁面。不會實際複製任何頁面,所以不需要額外的儲存空間。

在資料庫複製之後指向相同頁面的 Neptune 來源資料庫和複製資料庫。

對來源資料庫進行變更時

在下列範例中,來源資料庫會對 Page 1 中的資料進行變更。系統不會寫入至原始 Page 1,而是使用額外儲存空間建立新的頁面,稱為 Page 1'。來源資料庫現在指向新的 Page 1',同時也指向 Page 2Page 3Page 4。複製資料庫繼續指向 Page 1Page 4

在來源資料庫變更之後的 Neptune 來源資料庫和複製資料庫。

對複製資料庫進行變更時

在下圖中,複製資料庫也做了變更,這次在 Page 4 中。不是寫入至原始 Page 4,而是使用額外儲存空間建立新的頁面,稱為 Page 4'。來源資料庫繼續指向 Page 1',同時也指向 Page 2Page 4,但複製資料庫現在會指向 Page 1Page 3,同時也指向 Page 4'

在複製資料庫變更之後的 Neptune 來源資料庫和複製資料庫。

如第二個案例所示,在資料庫複製之後,在建立複製時不需要額外的儲存空間。不過,當來源資料庫與複製資料庫中發生變更時,只會建立已變更的頁面,如第三個及第四個案例所示。隨著來源資料庫與複製資料庫在一段時間後發生更多變更,您需要不斷增加更多的儲存空間來擷取並存放變更。

刪除來源資料庫

刪除來源資料庫不會影響與其相關聯的複製資料庫。複製資料庫會繼續指向來源資料庫先前所擁有的頁面。