遷移資料

最佳化 Spanner 結構定義並遷移應用程式後,您可以將資料移至空白的正式環境大小 Spanner 資料庫,然後將應用程式切換為使用 Spanner 資料庫。

視用途而定,您或許能以最短的停機時間執行即時資料遷移,也可能需要較長的停機時間才能執行資料遷移。

如果應用程式無法承受長時間停機,建議執行即時資料遷移。如果應用程式可以處理停機時間,則可考慮在停機期間遷移。

在即時資料遷移作業中,您必須設定網路基礎架構,讓資料在來源資料庫、目標 Spanner 資料庫,以及用於執行資料遷移作業的工具之間流動。您需要根據組織的法規遵循要求,決定要使用私人或公用網路連線。您可能需要請貴機構的網路管理員設定基礎架構。

即時資料遷移

即時資料遷移包含兩個部分:

  • 遷移來源資料庫一致快照中的資料。
  • 遷移自該快照以來的變更串流 (插入、更新和刪除),稱為變更資料擷取 (CDC)。

雖然即時資料遷移有助於保護資料,但這項程序也涉及一些挑戰,包括:

  • 在快照遷移期間儲存 CDC 資料。
  • 擷取傳入的 CDC 串流時,將 CDC 資料寫入 Spanner。
  • 確保 CDC 資料遷移至 Spanner 的速度,快於傳入的 CDC 串流。

遷移作業 (有停機時間)

如果來源資料庫可以匯出為 CSV 或 Avro,您就能在停機期間遷移至 Spanner。詳情請參閱「Spanner 匯入和匯出總覽」。

如果應用程式或測試環境可以承受幾小時的停機時間,就能使用停機遷移。在即時資料庫中,如果遷移作業會導致停機,可能會造成資料遺失。

如要執行停機遷移,請考慮下列概略做法:

  1. 停止應用程式,並從來源資料庫產生資料的 dump 檔案。
  2. 以 MySQL、PostgreSQL、Avro 或 CSV 傾印格式,將傾印檔案上傳至 Cloud Storage。
  3. 使用 Dataflow 或 Spanner 遷移工具,將 dump 檔案載入 Spanner。

產生多個小型 dump 檔案可加快寫入 Spanner 的速度,因為 Spanner 可以平行讀取多個 dump 檔案。

從來源資料庫產生 dump 檔案時,請注意下列事項,以產生一致的資料快照:

  • 執行轉儲作業前,請對來源資料庫套用讀取鎖定,防止資料在產生轉儲檔案期間變更。
  • 或者,您也可以使用來源資料庫的唯讀副本 (停用複製功能) 產生 dump 檔案。

來源專屬指南