Spanner 匯入和匯出功能總覽

您可以使用下列任一方法,將大量資料匯入或匯出 Spanner:

  • 使用 Dataflow 匯入或匯出任何 Spanner 資料庫。
  • 使用 Avro 或 CSV 檔案格式,將任何 Spanner 資料庫匯出至 Cloud Storage 值區。
  • 從 Avro 或 CSV 檔案將資料匯入新的 Spanner 資料庫。

用途

您可以在下列情況使用 Spanner 匯入和匯出功能:

  • 大量載入:您可以將大量資料匯入 Spanner。
  • 長期備份和封存:您可以隨時匯出資料庫,並儲存在所選的 Cloud Storage bucket 位置,以進行長期備份或封存。此外,您可以使用時間點復原功能,匯出過去特定時間戳記的資料庫。如果您需要復原速度較快但保留期限較短的災難復原技術,建議使用備份時間點復原 (PITR)

  • 將資料庫複製到開發或測試專案:您可以從正式版專案匯出資料庫,然後匯入開發或測試專案,用於整合測試或其他實驗。

  • 擷取資料以供分析:您可以匯出資料庫,將大量作業資料擷取至 BigQuery 等分析服務。BigQuery 可以從 Cloud Storage 值區自動擷取 Avro 格式的資料,讓您更輕鬆地對營運資料執行分析。如要使用 BigQuery 即時分析 Spanner 資料,但不想複製或移動資料,可以改用 Spanner 聯盟查詢。

比較匯入和匯出功能與備份和還原功能

Spanner 的匯入和匯出作業與備份及還原作業有許多相似之處。下表說明兩者的相似之處和差異,協助您決定要使用哪一個。

備份與還原匯入及匯出
資料一致性 備份和匯出的資料庫都具有交易一致性和外部一致性。
效能影響 備份不會影響執行個體的效能。Spanner 會使用專屬作業執行備份,不會耗用執行個體的伺服器資源。 將匯出作業設為中等優先順序,盡量減少對資料庫效能的影響。詳情請參閱工作優先順序
儲存格式 使用專屬加密格式,可快速還原。 支援 CSV 和 Avro 檔案格式。
可攜性 您可以在與來源資料庫相同的執行個體中建立備份。

建立備份後,如需跨區域或跨專案備份,可以將備份複製到其他區域或專案的執行個體。然後,您可以從備份還原為新資料庫,並還原至同一專案中的任何執行個體。還原目標執行個體的設定應與備份來源執行個體相同。
匯出的資料庫會儲存在 Cloud Storage 中,資料可遷移至任何支援 CSV 或 Avro 的系統。
保留 備份最多可保留一年。 匯出的資料庫會儲存在 Cloud Storage 中,預設會保留至刪除為止。您可以自訂生命週期保留政策。
定價 系統會根據每個時間單位使用的儲存空間,向 Spanner 專案收取備份費用。詳情請參閱「定價」一節。 由於匯入和匯出作業會使用 Cloud StorageDataflow,因此計費方式較為複雜。詳情請參閱資料庫匯出和匯入定價
還原時間 還原作業分為兩個步驟:還原和最佳化。還原作業會直接掛接備份資料,不必複製資料,因此可快速提供第一個位元組。還原作業完成後,資料庫即可供使用,但在最佳化期間,讀取延遲時間可能會稍長。詳情請參閱「還原的運作方式」。 匯入速度較慢。您必須等待所有資料寫入資料庫。

比較檔案格式

下表比較匯入及匯出 Spanner 資料時,Avro 和 CSV 檔案格式的功能差異。

功能 Avro 格式 CSV 格式
匯入或匯出整個資料庫
可只匯出資料庫中選取的資料表
可匯入先前匯出的資料表
匯出過去時間戳記的資料
使用 Google Cloud CLI 匯入或匯出
使用 Dataflow 匯入或匯出
使用 Spanner 匯入或匯出

Avro 檔案

匯出為 Avro 格式時,您可以指定要匯出的資料表清單。以這種方式匯出的任何子項資料表都必須連同父項資料表一起匯出。Spanner 會在匯出的檔案中保留整個資料庫結構定義。

從 Avro 格式匯入時,Spanner 會重新建立匯出資料庫的整個結構定義,包括所有資料表。原始匯出作業中包含的資料表會收到所有匯出的資料,其他資料表則維持空白。

Google Cloud 控制台的 Spanner 頁面提供的 Avro 格式匯入和匯出選項有限。舉例來說,您無法設定網路和子網路選項。如需更多選項,請改用 Dataflow

限制

您無法以 Avro 格式匯出及匯入地區群組

CSV 檔案

你一次只能以 CSV 格式匯出單一 Spanner 資料表。匯出時,系統不會匯出結構定義,只會匯出資料。

從 CSV 檔案匯入資料前,請先建立 JSON 資訊清單檔案。

定價

使用匯出或匯入工具時,Spanner 不會向您收取額外的費用;只有將資料庫匯入 Spanner 時,您才必須按照標準費率支付資料儲存空間的費用。不過,您可能需要支付其他與匯入及匯出資料庫有關的費用。詳情請參閱資料庫匯出和匯入定價

後續步驟