Spanner 提供災難復原功能,協助您保護資料,避免遺失、損毀和區域性服務中斷。這些工具可讓您還原資料庫,並在發生意外中斷時維持業務持續運作。
Spanner 災難復原功能
Spanner 的設計宗旨是可擴充及全球分散式。 Spanner 提供下列功能,確保資料高可用性:
多區域設定:Spanner 可在單一區域或多個區域內的不同可用區中,維護資料副本,確保即使可用區或區域發生故障,資料仍可供使用。
資料庫刪除防護:您可以防止使用者或服務帳戶意外刪除現有資料庫,前提是這些帳戶必須具備刪除資料庫所需的 Identity and Access Management (IAM) 權限。
資料庫備份與還原: 您可以建立 Spanner 資料庫的備份,並還原這些備份,以防範操作人員和應用程式錯誤。 所有備份都經過加密處理,且具備高可用性,建立後最多可保留一年。您可以視需求建立完整備份,或使用備份排程。您只能使用備份排程建立增量備份。
匯出及匯入:您可以將 Spanner 資料庫匯出至 Cloud Storage,格式為 CSV 或 Avro。
時間點復原 (PITR): Spanner 時間點復原 (PITR) 功能可防範邏輯資料損毀,以及資料庫遭意外刪除或寫入。舉例來說,如果運算子不慎寫入資料,或應用程式啟動時損毀資料庫,您可以從過去 (最多 7 天) 的時間點復原資料。
跨區域副本: 您可以將備份複製到不同的地理區域,以防區域性故障,或符合貴機構的法規遵循需求。
選擇備份或匯出資料庫
請先比較備份資料庫和匯出資料庫,再決定要使用哪一種方式。舉例來說,備份資料的保留期限最長為一年。如要將資料保留超過一年,可以考慮匯出資料庫。下表說明備份及還原與匯入及匯出功能之間的相似之處和差異:
| 備份與還原 | 匯入及匯出 | |
|---|---|---|
| 資料一致性 | 備份和匯出的資料庫都具有交易一致性和外部一致性。 | |
| 效能影響 | 備份不會影響執行個體的效能。Spanner 會使用專屬作業執行備份,不會耗用執行個體的伺服器資源。 | 匯出作業會以中等優先順序執行,盡量減少對資料庫效能的影響。詳情請參閱「工作優先順序」。 |
| 儲存格式 | 使用專屬加密格式,可快速還原資料。 | 支援 CSV 和 Avro 檔案格式。 |
| 可攜性 | 您可以在與來源資料庫相同的執行個體中建立備份。 建立備份後,如需跨區域或跨專案備份,可以將備份複製到不同區域或專案的執行個體。然後,您可以從備份還原資料,做為同一專案中任何執行個體的新資料庫。還原目標執行個體的執行個體設定,應與備份儲存所在執行個體的設定相同。 |
匯出的資料庫會儲存在 Cloud Storage 中, 且資料可遷移至任何支援 CSV 或 Avro 的系統。 |
| 保留 | 備份最多可保留一年。 | 匯出的資料庫會儲存在 Cloud Storage 中,預設會保留至刪除為止。您可以自訂生命週期和保留政策。 |
| 定價 | 系統會根據每個時間單位使用的儲存空間,向您的 Spanner 專案收取備份費用。詳情請參閱「定價」部分。 | 由於匯入和匯出作業會使用 Cloud Storage 和 Dataflow,因此計費方式較為複雜。詳情請參閱「資料庫匯出與匯入定價」。 |
| 還原時間 | 還原作業分為兩個步驟:還原和最佳化。還原作業會直接掛接備份資料,不必複製資料,因此可快速提供第一個位元組。 還原作業完成後,即可使用資料庫,但資料庫進行最佳化時,讀取延遲時間可能會稍微增加。詳情請參閱「還原功能的運作方式」。 | 匯入速度較慢。您需要等待所有資料寫入資料庫。 |
災難復原技術
Spanner 提供災難復原技術,可保護您的資料免於下列災難影響:
- 可用區故障:Spanner 區域設定可自動防範可用區故障,確保區域內某個可用區發生故障時,應用程式仍可正常運作。
- 區域性故障:如果應用程式需要更高的資料可用性,並防範區域性故障,請使用多區域設定,可用性可達 99.999%。
- 重大地理災害:使用 Spanner 跨區域備份副本,在不同區域提供備份。
- 邏輯毀損:針對不同保留期限,使用下列災難復原技術:
- 設定時間點復原 (PITR),即可還原過去 7 天內任何時間點的資料。
- 設定備份排程,按照符合您需求的頻率建立完整備份或增量備份。所有備份最多可保留一年。
- 將資料庫匯出至 Cloud Storage,以便保留資料以符合法規、進行分析或產生報表。
- 誤刪資料庫:使用資料庫防刪除功能,防止具有必要 IAM 權限的使用者或服務帳戶誤刪現有資料庫。
盡量降低災害復原策略的成本
您可以透過下列方式,最佳化 Spanner 災難復原的成本:
- 多區域設定:只有在應用程式需要 99.999% 可用性時,才使用多區域設定。如果應用程式需要唯讀延遲時間,請考慮其他區域的唯讀副本。
- 備份頻率:排定備份作業時,請只設定符合需求的頻率。
- 備份類型:使用增量備份排程,節省儲存費用。
- 備份保留時間:判斷並設定備份保留期限,以最短時間滿足復原和法規遵循需求。
- 匯出大量資料:如要匯出大量資料,建議使用 Spanner Data Boost,將運算資源從執行個體卸載,避免對交易效能造成負面影響。
測試災難復原策略
建議測試及驗證災難復原計畫的下列元件:
- 模擬最有可能導致貴機構資料遺失的事件。
- 從建立的備份還原資料庫。如要進一步瞭解如何還原資料庫,請參閱「還原總覽」。
- 評估災難復原計畫對儲存空間用量的影響。
- 評估備份程序對應用程式效能的影響。
- 模擬可用區或區域故障,測試容錯移轉和復原程序。