管理備份

Bigtable 備份功能可保護資料表,避免意外遺失、損毀或發生災難。您可以使用 Google Cloud 控制台、Google Cloud CLI 或 Cloud Bigtable 用戶端程式庫,建立、複製、還原及監控這些備份。

事前準備

開始之前,請先參閱「備份」,並查看「版本總覽」,瞭解僅限 Enterprise Plus 版的功能。

確認您或您使用的使用者帳戶具備執行所需動作的必要權限。

如要使用 gcloud CLI,請安裝 Bigtable 適用的 gcloud CLI。

使用自動備份

您可以使用 gcloud CLI 或 Google Cloud 控制台啟用自動備份功能。根據預設,自動備份功能每天會為資料表建立標準備份,保留期限為七天。您可以透過下列方式自訂自動備份政策:

  • 在 SSD 執行個體上設定自動熱備份,指定熱備份保留時間 (24 小時至 10 天)。這項必要設定會決定每日備份在轉為標準級備份前,要保留為熱備份多久。熱自動備份的預設保留期限也是七天。詳情請參閱本文的「設定熱自動備份」一節。
  • 修改備份保留期限 (最長 90 天)。詳情請參閱本文的「更新自動備份政策」一節。
  • 選取已啟用自動備份功能的特定叢集位置。這個選項僅適用於 Enterprise Plus 版本。詳情請參閱本文的「設定自動備份叢集位置」一節。

無論是手動建立或自動備份,刪除、更新、複製和還原備份的步驟都相同。

您可以延長備份或備份副本的到期日。詳情請參閱「修改備份或備份副本」。

如果您打算啟用自動備份功能,請考量下列因素:

  • 如果執行個體中的資料表已啟用自動備份功能,當您將叢集新增至該執行個體時,系統不會為新增的叢集建立每日備份。如要為所有叢集 (包括新加入的叢集) 建立每日備份,請停用資料表的自動備份功能,然後重新啟用。
  • 如果刪除已啟用自動備份功能的資料表,之後又取消刪除,則必須在復原的資料表上重新啟用自動備份功能。
  • 還原資料表的自動備份時,系統不會自動為還原的資料表啟用自動備份功能。您必須手動啟用自動備份功能。

啟用自動備份功能

您可以使用 Google Cloud 控制台或 Google Cloud CLI 啟用自動備份功能。啟用自動備份功能並採用預設設定時,Bigtable 會每天為執行個體中各個叢集的資料表建立標準備份,並保留七天。

Bigtable 自動建立的備份,其 ID 開頭為 auto。舉例來說,ID 為 my-table 的資料表會具有 auto.my-table.c7x3.20230220-145537 這樣的自動備份 ID,其中 my-table 是截斷的資料表 ID,c7x3 是不重複的雜湊 ID,20230220-145537 則是採用世界標準時間格式的日期和時間。

如要建立已啟用自動備份功能的資料表,請參閱「建立及管理資料表」。

控制台

  1. 在 Google Cloud 控制台中,開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下要備份的資料表所在的執行個體。

  3. 在 Bigtable 導覽選單中,點選「資料表」。

    「Tables」(資料表) 頁面會顯示執行個體中的資料表清單。

  4. 如要啟用每日自動備份功能並採用預設設定,請在資料表的「Automated backup」(自動備份) 欄中,按一下「Enable」(啟用)。

    Bigtable 最多可能需要一小時才會開始建立備份。

  5. 選用:如要啟用自動備份功能並自訂設定 (例如在 SSD 執行個體上啟用自動熱備份),請按照下列步驟操作:

    1. 在表格的資料列中,按一下 「Edit」(編輯)。
    2. 在「Configure automated backup」(設定自動備份) 區段中,選取「Enable automated backup」(啟用自動備份)。

    您也可以日後更新現有政策,變更備份類型、保留期限,或在 Enterprise Plus 版本中變更叢集位置。詳情請參閱本文的「更新自動備份政策」和「設定熱自動備份」部分。

gcloud

如要啟用資料表的自動備份功能,請執行 gcloud bigtable tables update 指令。如要進一步瞭解如何在建立資料表時啟用自動備份功能,請參閱「建立資料表」。

資料表啟用自動備份政策之後,更新後的設定最多可能需要 1 小時才會生效。

gcloud bigtable tables update TABLE_ID \
--instance=INSTANCE_ID \
--enable-automated-backup

更改下列內容:

  • TABLE_ID:要備份的資料表 ID
  • INSTANCE_ID:執行個體的永久 ID

選用:您可以更新自動備份政策,指定自訂保留期限,或在 SSD 執行個體上設定熱自動備份。在 Enterprise Plus 版中,您可以為特定位置的叢集啟用自動備份功能。詳情請參閱本文的「更新自動備份政策」和「設定熱自動備份」章節。

停用自動備份

資料表停用自動備份政策之後,更新後的設定最多可能需要 1 小時才會生效。在政策變更前建立的備份會保留到過期為止,除非您刪除這些備份。

控制台

  1. 在 Google Cloud 控制台中,開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下執行個體,找出要停用自動備份功能的資料表。

  3. 在 Bigtable 導覽選單中,點選「資料表」。

    「Tables」(資料表) 頁面會顯示執行個體中的資料表清單。

  4. 在要停用自動備份功能的資料表列中,按一下 「Edit」(編輯)。

  5. 在「Edit table」(編輯資料表) 窗格的「Configure automated backup」(設定自動備份) 區段中,清除「Enable automated backup」(啟用自動備份)。

  6. 按一下「儲存」。

gcloud

如要停用資料表的自動備份功能,請執行 gcloud bigtable instances tables update 指令。

gcloud bigtable instances tables update TABLE_ID \
--instance=INSTANCE_ID \
--disable-automated-backup

更改下列內容:

  • TABLE_ID:資料表 ID
  • INSTANCE_ID:執行個體的永久 ID

查看自動備份政策

您可以使用Google Cloud 控制台或 Google Cloud CLI,查看資料表的自動備份政策。

控制台

  1. 在 Google Cloud 控制台中,開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下要查看資料表自動備份政策的執行個體。

  3. 在 Bigtable 導覽選單中,點選「資料表」。

    在「Tables」(資料表) 頁面中,如果未啟用自動備份,「Automated backup」(自動備份) 欄會顯示「Not enabled」(未啟用);如果已啟用自動備份,則會顯示備份類型 (「Standard」(標準) 或「Hot」(熱))。在 Enterprise Plus 版本中,如果已為特定叢集設定自動備份,該欄也會列出「Zones backed up」(已備份的可用區)。您也可以在資料表總覽頁面中,點選資料表 ID 查看這份摘要。

  4. 選用:如要查看完整政策設定,請在資料表列中按一下「 Edit」(編輯)。

    在「Edit table」(編輯資料表) 窗格中,「Configure automated backup」(設定自動備份) 區段會顯示「Backup type」(備份類型) 設定 (如果選取「Hot」(熱),則會顯示「Set hot to standard」(將熱設為標準) 時間長度)、「Retention period」(保留期限) 和「Select clusters to back up」(選取要備份的叢集) 設定。如要關閉窗格而不進行任何變更,請按一下「Cancel」(取消)。

gcloud

如要查看資料表的自動備份政策,請執行 gcloud bigtable instances tables describe 指令:

gcloud bigtable instances tables describe TABLE_ID \
    --instance=INSTANCE_ID

更改下列內容:

  • TABLE_ID:資料表 ID
  • INSTANCE_ID:執行個體的永久 ID

輸出看起來類似以下內容:

automatedBackupPolicy:
  frequency: 86400s
  keepHotDuration: 172800s
  retentionPeriod: 604800s
  locations: us-central1-a,us-east1-b,europe-west1-c
columnFamilies:
  my-family: {}
createTime: '2023-02-07T20:10:55.613546Z'
granularity: MILLIS
name: projects/my-project/instances/my-instance/tables/my-table
updateTime: '2023-02-07T20:10:55.613546Z'

注意事項:

  • 如果資料表未啟用自動備份,就不會顯示 automatedBackupPolicy 欄位。
  • 只有在設定政策以建立自動熱備份時,才會顯示 keepHotDuration 欄位。如果存在,則表示每個自動備份在轉換為標準備份之前,會保留為熱備份多久。如果政策建立的是標準備份 (預設),則不會顯示這個欄位。
  • retentionPeriod 欄位會指出自動建立備份的保留期限。您可以修改個別備份的保留期限,從備份建立時間起算,Enterprise 版最長可達 90 天,Enterprise Plus 版最長可達 365 天。如要更新備份保留期限,請參閱「修改備份或備份副本」。
  • 只有在 Enterprise Plus 版本中,為特定位置的叢集啟用自動備份功能時,才會顯示 locations 欄位。如果出現,則表示已啟用自動備份的叢集位置清單。如果所有位置都啟用自動備份功能 (預設),就不會顯示這個欄位。

更新自動備份政策

自動備份政策變更不會回溯套用至現有備份。新的備份政策設定只會套用至後續備份。

在 Enterprise 和 Enterprise Plus 版本中,您可以設定自訂保留期限,最長可達 90 天。在 SSD 執行個體上,您可以指定熱備份保留時間,設定自動備份在轉為標準備份前,應保持熱備份狀態多久,藉此設定自動熱備份。在 Enterprise Plus 版本中,您也可以選取自動備份的特定叢集位置。如要進一步瞭解熱自動備份,請參閱「設定熱自動備份」。

如要更新現有備份 (包括自動備份) 的保留期限或到期日,請參閱「修改備份或備份副本」。

控制台

  1. 在 Google Cloud 控制台中,開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下要更新自動備份政策的資料表所在的執行個體。

  3. 在 Bigtable 導覽選單中,點選「資料表」。

    「Tables」(資料表) 頁面會顯示執行個體中的資料表清單。

  4. 在要更新的資料表列中,按一下 「Edit」(編輯)。

  5. 在「Edit table」(編輯資料表) 窗格的「Configure automated backup」(設定自動備份) 部分,確認已選取「Enable automated backup」(啟用自動備份),然後更新下列任一設定:

    • 在「Backup type」(備份類型) 部分,選取「Standard」(標準) 或「Hot」(熱)。您無法在 HDD 執行個體或已啟用分層儲存空間的資料表上選取「Hot」(熱)。如果選取「熱」,請在「將熱級別設為標準級別」欄位中,輸入 1 到 10 之間的整數 (最多為保留期限),指定每個自動備份在自動轉為標準備份之前,應保持熱備份狀態的天數。
    • 在「Backup configuration」(備份設定) 區段的「Retention period」(保留期限) 欄位中,輸入 3 到 90 之間的整數,指定 Bigtable 保留備份的天數 (最多 90 天)。
    • Enterprise Plus 版:在「Backup configuration」(備份設定) 區段的「Select clusters to back up」(選取要備份的叢集) 清單中,選取要讓 Bigtable 建立每日備份的叢集,然後按一下「OK」(確定)。
  6. 按一下「儲存」。

gcloud

如要修改資料表的自動備份政策,請使用 gcloud bigtable tables update 指令,並搭配下列一或多個旗標:

  • --automated-backup-retention-period:設定自訂保留期限
  • --automated-backup-keep-hot-duration:在 SSD 執行個體上,設定 Bigtable 建立自動熱備份,並指定備份在轉為標準備份前,應保留為熱備份的時間
  • --automated-backup-locations:在 Enterprise Plus 版本中,僅為指定位置的叢集啟用自動備份
gcloud bigtable tables update TABLE_ID \
    --instance=INSTANCE_ID \
    --automated-backup-retention-period=RETENTION_PERIOD \
    --automated-backup-keep-hot-duration=KEEP_HOT_DURATION \
    --automated-backup-locations=BACKUP_LOCATIONS

更改下列內容:

  • TABLE_ID:已啟用自動備份功能的資料表 ID
  • INSTANCE_ID:執行個體的永久 ID
  • RETENTION_PERIOD:最長 90 天。這個值必須以數字表示,單位為 m、h 或 d (分鐘、小時或天),例如 15d 代表 15 天。

    範例:72h 或 15d

  • KEEP_HOT_DURATION:自動備份在轉為標準備份前,保持熱備份狀態的時間長度,範圍從 24h (1 天) 到 10d (10 天),不得超過政策的保留期限。請以數字表示值,並加上 s、m、h 或 d (秒、分、小時或天) 單位。Bigtable 僅在 SSD 執行個體和未啟用分級式儲存空間的資料表上支援這個旗標。

    範例:24h 或 2d

  • BACKUP_LOCATIONS:以半形逗號分隔的叢集位置清單,這些位置會啟用自動備份功能。如未設定,備份預設會儲存至資料表執行個體中的所有叢集。

    範例:us-central1-a,us-east1-b,europe-west1-c

設定熱自動備份

建立資料表、啟用自動備份或更新自動備份政策時,您可以使用 Google Cloud 控制台或 Google Cloud CLI 設定熱自動備份。設定熱級別自動備份時,您需要指定熱級別保留時間長度,決定每日備份在轉為標準級備份前,要保留為熱級別多久。舉例來說,如果只想將最近的每日備份保留為熱備份,請將保留熱備份的時間設為 24 小時 (1 天),這樣一來,每次建立新的每日備份後,前一個每日備份就會轉為標準備份。如要進一步瞭解如何在建立資料表時設定自動備份,請參閱「建立資料表」。

設定熱自動備份時,請考量下列需求和限制:

  • 資料表必須位於 SSD 執行個體中。Bigtable 不支援 HDD 執行個體的自動熱備份。
  • 如果資料表已啟用分級式儲存空間,Bigtable 不支援自動熱備份。詳情請參閱「分層儲存空間總覽」。
  • 熱備份時間長度必須介於 24 小時 (24h 或 1d,或 Google Cloud 控制台中的 1 天) 到 10 天 (10d) 之間,且不得超過政策的保留期限。
  • 如要為使用超過 400 TB SSD 儲存空間的叢集啟用資料表熱自動備份功能,請與 Cloud Customer Care 聯絡。詳情請參閱「備份限制」。

控制台

如要為現有資料表設定自動熱備份,請按照下列步驟操作:

  1. 在 Google Cloud 控制台中,開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下 SSD 執行個體,其中包含您要設定的資料表。

  3. 在 Bigtable 導覽選單中,點選「資料表」。

    「Tables」(資料表) 頁面會顯示執行個體中的資料表清單。

  4. 在表格的資料列中,按一下 「Edit」(編輯)。

  5. 在「Edit table」(編輯資料表) 窗格的「Configure automated backup」(設定自動備份) 區段中,確認已勾選「Enable automated backup」(啟用自動備份) 核取方塊。

  6. 在「Backup type」(備份類型) 部分,選取「Hot」(熱)。

  7. 在「Set hot to standard」(將熱級別設為標準級別) 欄位中,輸入 1 到 10 之間的整數,指定每個自動備份在自動轉換為標準備份之前,保持熱級別的天數。預設值為 3 天。這個值不得超過「Retention period」(保留期限) 欄位中的天數。

  8. 選用:在「Backup configuration」(備份設定) 區段的「Retention period」(保留期限) 欄位中,輸入 3 到 90 之間的整數。如果是 Enterprise Plus 版,請在「Select clusters to back up」(選取要備份的叢集) 清單中選取特定叢集,然後按一下「OK」(確定)。

  9. 按一下「儲存」。

如要停止將後續的自動備份保留為熱備份,並將政策還原為建立標準備份,請開啟資料表的「Edit table」(編輯資料表) 窗格,在「Backup type」(備份類型) 區段中選取「Standard」(標準),然後按一下「Save」(儲存)。變更備份類型不會影響已建立的備份。現有的熱備份會維持熱備份狀態,直到轉換期結束。

gcloud

如要為資料表設定熱自動備份,請使用 --automated-backup-keep-hot-duration 旗標執行 gcloud bigtable tables update 指令:

gcloud bigtable tables update TABLE_ID \
    --instance=INSTANCE_ID \
    --automated-backup-keep-hot-duration=KEEP_HOT_DURATION

更改下列內容:

  • TABLE_ID:要設定的資料表 ID
  • INSTANCE_ID:執行個體的永久 ID
  • KEEP_HOT_DURATION:自動備份在轉為標準備份前,保持熱備份狀態的時間長度,範圍從 24h (1 天) 到 10d (10 天),不得超過政策的保留期限。請以數字表示值,並加上 s、m、h 或 d (秒、分、小時或天) 單位,例如 24h 或 2d。如果資料表尚未啟用自動備份功能,則執行 gcloud bigtable tables update 指令時,也必須加入 --automated-backup-retention-period 旗標。否則指令會失敗,並顯示缺少保留期限的錯誤。

如要停止保留自動備份,並將政策還原為建立標準備份,請使用 --clear-automated-backup-keep-hot-duration 旗標執行 gcloud bigtable tables update 指令。清除保留時間不會影響已建立的備份。現有的熱備份會維持熱級別,直到保留期限屆滿,才會轉為標準級備份。

gcloud bigtable tables update TABLE_ID \
    --instance=INSTANCE_ID \
    --clear-automated-backup-keep-hot-duration

更改下列內容:

  • TABLE_ID:要設定的資料表 ID
  • INSTANCE_ID:執行個體的永久 ID

設定自動備份叢集位置

根據預設,如果執行個體有多個叢集,當您為執行個體中的資料表啟用自動備份功能時,Bigtable 會每天為執行個體中的每個叢集建立備份。在 Enterprise Plus 版中,您可以選擇性設定自動備份,在特定位置的叢集上建立每日備份。

您可以在建立資料表、啟用自動備份或更新自動備份政策時,設定自動備份叢集位置。

控制台

  1. 在 Google Cloud 控制台中,開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下要設定的資料表所在的執行個體。

  3. 在 Bigtable 導覽選單中,點選「資料表」。

  4. 在「Tables」(資料表) 頁面中,按一下資料表資料列中的 「Edit」(編輯)。

  5. 在「Edit table」(編輯資料表) 窗格的「Configure automated backup」(設定自動備份) 區段中,確認已選取「Enable automated backup」(啟用自動備份)。

  6. 在「Backup configuration」(備份設定) 區段的「Select clusters to back up」(選取要備份的叢集) 清單中,選取要讓 Bigtable 建立每日備份的叢集,然後按一下「OK」(確定)。

  7. 按一下「儲存」。

如要改回在執行個體中的所有叢集上建立每日備份,請開啟資料表的「Edit table」(編輯資料表) 窗格,在「Select clusters to back up」(選取要備份的叢集) 清單中選取所有叢集,然後依序點選「OK」(確定) 和「Save」(儲存)。

gcloud

如要指定自動備份的叢集位置,請使用 --automated-backup-locations 旗標執行 gcloud bigtable tables update 指令:

gcloud bigtable tables update TABLE_ID \
    --instance=INSTANCE_ID \
    --automated-backup-locations=BACKUP_LOCATIONS

更改下列內容:

  • TABLE_ID:要設定的資料表 ID
  • INSTANCE_ID:執行個體的永久 ID
  • BACKUP_LOCATIONS:以半形逗號分隔的叢集位置清單,您要在這些位置啟用自動備份,例如 us-central1-a,us-east1-b

如要移除自訂自動備份位置,並改回在執行個體的所有叢集位置建立備份,請使用 --clear-automated-backup-locations 旗標執行 gcloud bigtable tables update 指令:

gcloud bigtable tables update TABLE_ID \
    --instance=INSTANCE_ID \
    --clear-automated-backup-locations

更改下列內容:

  • TABLE_ID:要設定的資料表 ID
  • INSTANCE_ID:執行個體的永久 ID

查看事件記錄

啟用自動備份功能後,Bigtable 會在建立備份時發出系統事件記錄。如果備份建立作業延遲,也會發出事件記錄。

如要在控制台的 Bigtable 叢集總覽頁面,查看自動備份系統事件記錄,請按照下列步驟操作:

  1. 在 Google Cloud 控制台中,開啟 Bigtable 執行個體清單。

    開啟執行個體清單

  2. 按一下執行個體 ID。

  3. 按一下叢集 ID。

    如果過去一小時內有建立自動備份事件記錄,這些記錄會顯示在「Logs」(記錄) 窗格中。

  4. 選用:如要查看較早的事件記錄,請按一下「1 Hour」(1 小時) 旁的箭頭,然後選取其他日期範圍。

如要在 Logs Explorer 中查看自動備份系統事件記錄,請按照下列步驟操作:

  1. 前往「記錄檔探索工具」:

    前往「Logs Explorer」

    選取適當的 Google Cloud 專案。

  2. 如要查看備份建立事件,請在「Query」(查詢) 欄位中輸入下列內容:

    resource.type="audited_resource" resource.labels.service="bigtableadmin.googleapis.com"
    resource.labels.method="CreateAutomatedBackup"
    
  3. 點選「執行查詢」。

  4. 如要查看備份延遲事件,請在「Query」(查詢) 欄位中輸入下列內容:

    resource.type="audited_resource" resource.labels.service="bigtableadmin.googleapis.com"
    resource.labels.method="DelayedAutomatedBackup"
    
  5. 點選「執行查詢」。

    查詢結果會包含類似下列的訊息:

    Automated backup is delayed for table ab-test on cluster my-cluster-staging-c1.
    

建立標準級備份

您可以使用 Google Cloud CLI、控制台或其中一個 Bigtable 用戶端程式庫,建立資料表的標準備份。您也可以啟用自動備份功能,讓 Bigtable 每天為您建立標準備份。詳情請參閱「啟用自動備份」。

控制台

  1. 前往 Google Cloud 控制台的 Bigtable「Instances」(執行個體) 頁面。

    開啟執行個體清單

  2. 按一下要備份的資料表所在的執行個體。

  3. 按一下左側導覽窗格中的「Backups」(備份)。

  4. 按一下「Create backup」(建立備份)。

  5. 在「Table ID」(資料表 ID) 清單中,選取要備份的資料表。(如果您在資料表總覽頁面的「Table action」(資料表動作) 選單中點選「Create backup」(建立備份),Bigtable 會填入資料表)。

  6. 如果您使用複製功能,請選取叢集的「Cluster ID」(叢集 ID)。(如果您在叢集總覽頁面中,按一下叢集 ID 旁的「Create backup」(建立備份),Bigtable 就會填入資料表和叢集)。

  7. 輸入備份的專屬 ID。

  8. 在「Backup type」(備份類型) 區段中,選取「Standard」(標準)。

  9. 選取其中一個選項,設定到期日。

  10. 點選「建立」。

    Google Cloud 控制台會顯示「Backups」(備份) 頁面,並篩選出備份及其詳細資料。

  11. 選用:如要查看備份狀態,請按一下「活動」分頁標籤。

    Bigtable 完成資料備份後,「Status」(狀態) 欄會顯示「Backup complete」(備份完成) 狀態。

gcloud

  1. 如果不知道執行個體 ID,請使用 bigtable instances list 指令查看專案的執行個體清單:

    gcloud bigtable instances list
    
  2. 查看執行個體的備份清單,其中包含要備份的資料表,以便選擇尚未在目標叢集使用的備份 ID:

    gcloud bigtable backups list --instance=INSTANCE_ID \
      --cluster=CLUSTER_ID
    

    更改下列內容:

    • INSTANCE_ID:執行個體的永久 ID
    • CLUSTER_ID:叢集的永久 ID
  3. 查看資料表清單,確認要備份的資料表 ID:

    gcloud bigtable instances tables list --instances=INSTANCE_ID
    

    將 INSTANCE_ID 替換為執行個體的永久 ID。

  4. 執行 gcloud bigtable instances backups create 指令,從資料表建立備份,並提供到期日或保留期限:

    gcloud bigtable backups create BACKUP_ID --instance=INSTANCE_ID \
      --cluster=CLUSTER_ID \
      --table=TABLE_ID \
      --expiration-date=EXPIRATION_DATE \
      --retention-period=RETENTION_PERIOD
    

    更改下列內容:

    • BACKUP_ID:您指派給備份的 ID
    • INSTANCE_ID:執行個體的永久 ID
    • CLUSTER_ID:叢集的永久 ID
    • TABLE_ID:要備份的資料表 ID
    • EXPIRATION_DATE:未來的日期,Enterprise 版本最多 90 天,Enterprise Plus 版本最多 365 天。值必須採用「Zulu」世界標準時間戳記格式,精確度可達奈秒,例如 2022-10-02T15:01:23.045123456Z。
    • RETENTION_PERIOD:Enterprise 版本最長 90 天,Enterprise Plus 版本最長 365 天。值必須以數字表示,單位為 m、h 或 d (分鐘、小時或天),例如 36h 或 15d。

    該指令接受以下的可選標記:

    • --async:在作業完成前,將作業 ID 傳回終端機。如要查看作業狀態,這項資訊就很有幫助。
  5. 查看備份清單,確認是否已建立備份:

    gcloud bigtable backups list --instance=INSTANCE_ID \
      --cluster=CLUSTER_ID
    

    更改下列內容:

    • INSTANCE_ID:執行個體的永久 ID
    • CLUSTER_ID:叢集的永久 ID
  6. 如果備份未列出,請查看作業狀態。

    如果狀態為 Ready,表示備份已完成。

建立熱備份

您可以使用 Google Cloud 控制台或 Google Cloud CLI,視需要建立熱備份。您也可以設定自動熱備份,讓 Bigtable 每天建立熱備份。詳情請參閱「設定熱自動備份」。

如果資料表已啟用分級式儲存空間 (預先發布版),就無法建立熱備份。詳情請參閱「分層儲存空間總覽」。

控制台

您可以使用 Google Cloud 控制台建立資料表的熱備份,步驟如下:

  1. 前往 Google Cloud 控制台的 Bigtable「Instances」(執行個體) 頁面。

    開啟執行個體清單

  2. 按一下要備份的資料表所在的執行個體。

  3. 按一下左側導覽窗格中的「Backups」(備份)。

  4. 按一下「Create backup」(建立備份)。

  5. 在「Table ID」(資料表 ID) 清單中,選取要備份的資料表。(如果您在資料表總覽頁面的「Table action」(資料表動作) 選單中點選「Create backup」(建立備份),Bigtable 會填入資料表)。

  6. 如果您使用複製功能,請選取叢集的「Cluster ID」(叢集 ID)。(如果您在叢集總覽頁面中,按一下叢集 ID 旁的「Create backup」(建立備份),Bigtable 就會填入資料表和叢集)。

  7. 在「Backup ID」(備份 ID) 欄位中,輸入備份的專屬 ID。

  8. 在「Backup type」(備份類型) 部分,選取「Hot」(熱)。

  9. 在「Set hot to standard」(將熱資料設為標準) 清單中,選取下列其中一個選項:

    • 如要將備份保留在熱儲存空間,直到到期為止,請選取「一律不」。
    • 如要在三天後將熱備份轉換為標準級別,請選取「3 天」。
    • 如要指定將熱備份轉換為標準備份的自訂日期和時間,請選取「Custom」(自訂)。這個值必須至少比 Bigtable 建立備份的時間晚 24 小時。
  10. 點選「建立」。

    Google Cloud 控制台會顯示「Backups」(備份) 頁面,並篩選出備份及其詳細資料。

  11. 選用:如要查看備份狀態,請按一下「活動」分頁標籤。

    Bigtable 完成資料備份後,「Status」(狀態) 欄會顯示「Backup complete」(備份完成) 狀態。

gcloud

  1. 如果不知道執行個體 ID,請使用 bigtable instances list 指令查看專案的執行個體清單:

    gcloud bigtable instances list
    
  2. 查看執行個體的備份清單,其中包含要備份的資料表,以便選擇尚未在目標叢集使用的備份 ID:

    gcloud bigtable backups list --instance=INSTANCE_ID \
      --cluster=CLUSTER_ID
    

    更改下列內容:

    • INSTANCE_ID:執行個體的永久 ID
    • CLUSTER_ID:叢集的永久 ID
  3. 查看資料表清單,確認要備份的資料表 ID:

    gcloud bigtable instances tables list --instances=INSTANCE_ID
    

    將 INSTANCE_ID 替換為執行個體的永久 ID。

  4. 執行 gcloud bigtable instances backups create 指令,建立資料表的熱備份,並提供到期日「或」保留期限:

    gcloud bigtable backups create BACKUP_ID --instance=INSTANCE_ID \
      --cluster=CLUSTER_ID \
      --table=TABLE_ID \
      --expiration-date=EXPIRATION_DATE \
      --retention-period=RETENTION_PERIOD \
      --backup-type=HOT
    

    更改下列內容:

    • BACKUP_ID:您指派給備份的 ID
    • INSTANCE_ID:執行個體的永久 ID
    • CLUSTER_ID:叢集的永久 ID
    • TABLE_ID:要備份的資料表 ID
    • EXPIRATION_DATE:未來日期,Enterprise 版為 90 天內,Enterprise Plus 版為 365 天內。日期必須採用「Zulu」世界標準時間時間戳記格式,精確度可達奈秒,例如 2022-10-02T15:01:23.045123456Z。
    • RETENTION_PERIOD:Enterprise 版本的期限最長為 90 天,Enterprise Plus 版本則最長為 365 天,以數字表示,單位為 m、h 或 d (分鐘、小時或天),例如 36h 或 89d。

    該指令接受下列選用標記:

    • --hot-to-standard-time=HOT_TO_STANDARD_TIME:Bigtable 將備份從熱備份轉換為標準備份的日期和時間,格式為「Zulu」世界標準時間時間戳記 (例如 2024-08-02T15:01:23.045123456Z) 或相對時間長度 (例如 +P30D 代表 30 天;請參閱 gcloud topic datetimes)。這個值必須至少比備份建立時間晚 24 小時。
    • --async:在作業完成前,將作業 ID 傳回終端機。如要查看作業狀態,這項資訊就很有幫助。
  5. 查看備份清單,確認是否已建立備份:

    gcloud bigtable backups list --instance=INSTANCE_ID \
      --cluster=CLUSTER_ID
    

    更改下列內容:

    • INSTANCE_ID:執行個體的永久 ID
    • CLUSTER_ID:叢集的永久 ID
  6. 如果備份未列出,請查看作業狀態。

    如果狀態為 Ready,表示備份已完成。

從備份還原

即使來源資料表已啟用自動備份,從備份還原的新資料表也不會啟用自動備份。如要對新資料表啟用自動備份功能,請務必啟用。

無論是標準級或熱備份,從備份還原的步驟都相同。Bigtable 還原熱備份至正式環境效能的速度,比標準備份更快。

控制台

您無法使用 Google Cloud 控制台還原至其他專案。如有需要,請改用 gcloud CLI。

  1. 前往 Google Cloud 控制台的 Bigtable「Instances」(執行個體) 頁面。

    開啟執行個體清單

  2. 按一下要還原的備份所在的執行個體。

  3. 按一下左側導覽窗格中的「Backups」(備份)。

  4. 找到要還原的備份,然後按一下「還原」。

  5. 選取要還原至哪個執行個體。

    如果執行個體的儲存空間不足,無法容納新資料表,則無法使用。如果您沒有在執行個體中建立資料表的權限,就無法使用該執行個體。將滑鼠游標懸停在 圖示上,即可查看更多資訊。

    如果從受 CMEK 保護的備份還原,目的地執行個體也必須受 CMEK 保護。

    如果從微秒時間戳記精細程度的資料表備份還原,目的地執行個體必須是 Enterprise Plus 執行個體。

    您無法使用Google Cloud 控制台還原至其他專案。如有需要,請改用 gcloud CLI。

  6. 輸入要從備份建立的資料表專屬 ID。這組 ID 設定後即無法變更。

  7. 按一下「還原」。

    控制台會顯示「Tables」(資料表) 頁面,並篩選出新資料表。

    控制台會顯示各叢集的還原狀態。當所有叢集的狀態欄顯示「Ready」(就緒) 時,表示資料表已還原並複製到執行個體中的所有叢集。

gcloud

  1. 如果不知道執行個體 ID,請使用 bigtable instances list 指令查看專案的執行個體清單:

    gcloud bigtable instances list
    
  2. 查看含有備份的執行個體備份清單,確認備份是否存在:

    gcloud bigtable backups list --instance=INSTANCE_ID_SOURCE \
        --cluster=CLUSTER_ID
    

    更改下列內容:

    • INSTANCE_ID_SOURCE:來源執行個體的永久 ID
    • CLUSTER_ID:叢集的永久 ID
  3. 查看目的地執行個體中的資料表清單,以便為新資料表選擇尚未使用的 ID:

    gcloud bigtable instances tables list --instances=INSTANCE_ID_DESTINATION
    

    將 INSTANCE_ID_DESTINATION 替換為目的地執行個體的永久 ID。

  4. 執行 gcloud bigtable instances tables restore 指令,將備份還原至新資料表:

    gcloud bigtable instances tables restore \
        --source=projects/PROJECT_ID_SOURCE/instances/INSTANCE_ID_SOURCE/clusters/CLUSTER_ID/backups/BACKUP_ID \
        --destination=TABLE_ID_NEW \
        --destination-instance=INSTANCE_ID_DESTINATION
    

    更改下列內容:

    • PROJECT_ID_SOURCE:專案 ID,該專案含有要還原的備份
    • INSTANCE_ID_SOURCE:來源執行個體的永久 ID
    • CLUSTER_ID:叢集的永久 ID
    • BACKUP_ID:要還原的備份 ID
    • TABLE_ID_NEW:新資料表的 ID
    • INSTANCE_ID_DESTINATION:目的地執行個體的永久 ID

    該指令接受下列選用標記:

    • --project=PROJECT_ID_DESTINATION:要還原至的專案 ID。如未指定這個選項,備份會還原至建立備份的執行個體中的新資料表。
    • --async:在作業完成前,將作業 ID 傳回終端機。如要查看作業狀態,這項資訊就很有幫助。
  5. 查看資料表清單,確認資料表是否已建立:

    gcloud bigtable instances tables list --instances=INSTANCE_ID_DESTINATION
    

    將 INSTANCE_ID_DESTINATION 替換為目的地執行個體的永久 ID。

  6. 如果清單中沒有備份,請查看作業狀態。

建立備份副本

控制台

You are not able to create a copy of a backup in a different project
using the console. If you need to do so, use the
gcloud CLI instead.
  1. 前往 Google Cloud 控制台的 Bigtable「Instances」(執行個體) 頁面。

    開啟執行個體清單

  2. 按一下含有要複製備份的執行個體。

  3. 按一下左側導覽窗格中的「Backups」(備份)。

  4. 找到要複製的備份,展開「Restore」(還原) 字樣旁的「More」(更多) 選單,然後按一下「Copy」(複製)。

  5. 找出要複製的備份,然後按一下「Copy」(複製)。

    如果備份是另一個備份的副本,則無法使用「Copy」(複製)。

  6. 選取目的地執行個體。

    您無法使用控制台在其他專案建立備份副本。如需執行這項操作,請改用 gcloud CLI。

    如果執行個體的儲存空間不足,無法儲存備份副本,則無法使用。如果您沒有在執行個體中建立備份的權限,就無法使用該執行個體。將滑鼠游標懸停在 圖示上,即可查看更多資訊。

    如果複製受 CMEK 保護的備份,目的地執行個體也必須受 CMEK 保護。

  7. 選取目的地叢集。

    與任何備份一樣,備份副本只會儲存在執行個體中的一個叢集,即使該執行個體使用複製功能也一樣。

  8. 輸入從備份建立的副本專屬 ID。ID 設定後即無法變更。

  9. 設定備份副本的到期時間,提供「Time」(時間) 的值,並從下拉式選單中選取「Unit」(單位)。

  10. 點選「複製」。

  11. 如要查看副本,請按一下「查看副本」。

    控制台會顯示目的地執行個體的「Backups」(備份) 頁面,並篩選出剛建立的備份副本。狀態欄顯示「Ready」(就緒) 時,表示複製作業已完成,可以進行後續操作。

gcloud

  1. 如果不知道執行個體 ID,請使用 bigtable instances list 指令查看專案的執行個體清單:

    gcloud bigtable instances list
    
  2. 查看含有備份的來源執行個體備份清單,確認要複製的備份是否存在:

    gcloud bigtable backups list --instance=INSTANCE_ID_SOURCE \
        --cluster=CLUSTER_ID_SOURCE
    

    更改下列內容:

    • INSTANCE_ID_SOURCE:來源執行個體的永久 ID
    • CLUSTER_ID_SOURCE:儲存來源備份的叢集 ID
  3. 查看目的地執行個體中的備份清單,以便選擇尚未使用的副本 ID:

    gcloud bigtable backups list --instances=INSTANCE_ID_DESTINATION
    

    將 INSTANCE_ID_DESTINATION 替換為目的地執行個體的永久 ID。

  4. 執行 gcloud bigtable backups copy 指令,建立備份副本:

    gcloud bigtable backups copy \
        --source-project=PROJECT_ID_SOURCE \
        --source-instance=INSTANCE_ID_SOURCE \
        --source-cluster=CLUSTER_ID_SOURCE \
        --source-backup=BACKUP_ID_SOURCE \
        --destination-project=PROJECT_ID_DESTINATION \
        --destination-instance=INSTANCE_ID_DESTINATION \
        --destination-cluster=CLUSTER_ID_DESTINATION \
        --destination-backup=BACKUP_ID_DESTINATION
    

    在指令後方附加下列其中一項:

    • --retention-period=RETENTION_PERIOD
    • --expiration-date=EXPIRATION_DATE

    更改下列內容:

    • PROJECT_ID_SOURCE:要複製的備份所在專案
    • INSTANCE_ID_SOURCE:來源執行個體的永久 ID
    • CLUSTER_ID_SOURCE:儲存來源備份的叢集 ID
    • BACKUP_ID_SOURCE:要複製的備份 ID
    • PROJECT_ID_DESTINATION:要放置副本的專案
    • INSTANCE_ID_DESTINATION:目的地執行個體的永久 ID
    • CLUSTER_ID_DESTINATION:目的地執行個體中要儲存副本的叢集 ID
    • BACKUP_ID_DESTINATION:您指派給備份副本的 ID
    • RETENTION_PERIOD:備份副本的存留時間,以數字和單位 (d 或 h) 表示。從來源備份建立時間算起,必須至少 6 小時,最多 30 天。例如 5d (5 天) 或 15h (15 小時)。請擇一使用,或使用到期日。
    • EXPIRATION_DATE:備份副本的到期日期和時間,格式為 2022-09-01T10:00:00.0Z。必須介於來源備份建立時間後的 6 小時至 30 天之間。

    該指令接受以下的可選標記:

    • --async:在作業完成前,將作業 ID 傳回終端機。如要查看作業狀態,這項資訊就很有幫助。

    如果傳回逾時訊息,表示備份可能已成功,且副本可能已建立。

  5. 查看備份清單,確認是否已建立副本:

    gcloud bigtable backups list --instances=INSTANCE_ID_DESTINATION
    

    將 INSTANCE_ID_DESTINATION 替換為目的地執行個體的永久 ID。

  6. 如果清單中沒有備份,請查看作業狀態。

在極少數情況下,備份複製作業可能會因容量限制而失敗,請改用其他目的地叢集再試一次。如果該作業也失敗,請與支援團隊聯絡。

查看作業狀態

控制台

  1. 前往 Google Cloud 控制台的 Bigtable「Instances」(執行個體) 頁面。

    開啟執行個體清單

  2. 按一下包含備份的執行個體。

  3. 按一下左側導覽窗格中的「Backups」(備份)。

  4. 在「Backups」(備份) 頁面中,按一下「Activity」(活動)。「狀態」欄會顯示每項作業目前的狀態。

還原資料表時,作業狀態包括:

  • 正在等候複製
  • 正在還原備份
  • 正在初始化
  • 已就緒:最佳化
  • 已就緒

建立備份時,作業狀態包括:

  • 正在建立備份
  • 備份完成

複製備份時,作業狀態包括:

  • 正在複製備份
  • 已複製備份

gcloud

如要查看備份或還原作業的狀態,您需要作業的專屬 ID。以下是作業 ID 範例:

`instances/instance-name/tables/table-name/locations/us-east1-b/operations/917168358249360635`

執行指令建立備份,或使用 --async 選項還原至新資料表後,終端機會顯示作業 ID。

  1. 複製作業 ID。

  2. 請執行 gcloud bigtable operations describe 指令。

    gcloud bigtable operations describe OPERATION_ID
    

    將 OPERATION_ID 替換成您複製的作業 ID。

    範例:

    gcloud bigtable operations describe \
        instances/instance-name/tables/table-name/locations/us-east1-b/operations/917168358249360635
    

    您可以每隔幾分鐘執行一次這個指令,直到 DONE 的值為 TRUE 為止。

如果您不知道作業 ID (可能是因為您並未執行指令,或是在不同的終端機視窗中),可以查看執行個體的作業清單,並判斷要檢查哪項作業。

  1. 查看執行個體最近的作業活動清單,其中包含您要備份或還原的資料表:

    gcloud bigtable operations list --instance=INSTANCE_ID
    

    將 INSTANCE_ID 替換為執行個體的永久 ID。

    終端機會在標示為 NAME、START_TIME、END_TIME 和 DONE 的資料欄中顯示作業清單。NAME 欄中的值是作業 ID。

  2. 從清單中的第一個項目開始,複製作業 ID。

  3. 使用 gcloud bigtable operations describe 查看作業的中繼資料:

    gcloud bigtable operations describe OPERATION_ID
    

    將 OPERATION_ID 替換成您複製的作業 ID。

    範例:

    gcloud bigtable operations describe \
        instances/instance-name/tables/table-name/locations/us-east1-b/operations/917168358249360635
    
  4. 如果作業的中繼資料顯示 backupInfo 的值,代表您已找到正確的作業,可以每隔一段時間重複執行這個指令,直到 DONE 的值為 TRUE。

    如果中繼資料未顯示 backupInfo 的值,請查看步驟 1 顯示的作業清單中的下一項作業。

修改備份或備份副本

無論是手動建立、透過自動備份政策建立,還是備份副本,您都可以修改現有備份的到期日或保留期限。在 Enterprise 版本中,備份到期日最多可延長至建立時間後的 90 天。在 Enterprise Plus 版中,到期日最多可設為備份建立時間後 365 天。您也可以將熱備份轉換為標準備份。

控制台

  1. 前往 Google Cloud 控制台的 Bigtable「Instances」(執行個體) 頁面。

    開啟執行個體清單

  2. 按一下包含備份的執行個體。

  3. 按一下左側導覽窗格中的「Backups」(備份)。

  4. 如要變更備份的到期日期和時間,請按照下列步驟操作:

    1. 找到要修改的備份,按一下「Restore」(還原) 旁邊的 選單,然後點選「Edit」(編輯)。

    2. 在「Backup expiration」(備份到期時間) 部分設定日期和時間,然後按一下「Save」(儲存)。

  5. 如要設定熱備份從熱級別轉換為標準級別的日期和時間,請按照下列步驟操作:

    1. 找到要修改的熱備份,按一下「Restore」(還原) 旁邊的 選單,然後點選「Edit」(編輯)。

    2. 在「Update hot to standard」(將 Hot 更新為 Standard) 部分,設定日期和時間,然後按一下「Save」(儲存)。

gcloud

您可以使用 gcloud CLI 修改備份或備份副本的到期日或期限。您也可以將熱備份轉換為標準備份。

  1. 查看備份清單:

    gcloud bigtable backups list --instance=INSTANCE_ID
    

    將 INSTANCE_ID 替換為執行個體的永久 ID。

    終端機會顯示備份清單。

  2. 記下要更新的備份 ID 和叢集 ID。

  3. 執行 gcloud bigtable backups update 指令,新增到期日或保留期限,或將熱備份轉換為標準備份:

    gcloud bigtable backups update BACKUP_ID \
        --instance=INSTANCE_ID \
        --cluster=CLUSTER_ID \
        --expiration-date=EXPIRATION_DATE \
        --retention-period=RETENTION_PERIOD
    

    更改下列內容:

    • BACKUP_ID:備份的專屬 ID
    • INSTANCE_ID:執行個體的永久 ID
    • CLUSTER_ID:叢集的永久 ID
    • EXPIRATION_DATE:未來的日期,Enterprise 版本最多 90 天,Enterprise Plus 版本最多 365 天。值必須採用「Zulu」世界標準時間戳記格式,精確度可達奈秒,例如 2019-10-02T15:01:23.045123456Z。
    • RETENTION_PERIOD:備份資料的保留期限,Enterprise 版本最長 90 天,Enterprise Plus 版本最長 365 天。備份副本則最多 30 天。值必須以數字表示,單位為 m、h 或 d (分鐘、小時或天),例如 36h 或 89d。

    該指令接受以下的可選標記:

    • --hot-to-standard-time=HOT_TO_STANDARD_TIME:Bigtable 應將備份從熱備份轉換為標準備份的日期和時間。這個值必須至少比備份建立時間晚 24 小時,例如 2024-08-02T15:01:23.045123456Z。

    您也可以提供相對時間長度日期和時間,例如 +P30D 代表 30 天。詳情請參閱 gcloud topic datetimes 的說明。

  4. 執行 gcloud bigtable instances backups describe 指令,確認您已成功更新到期時間:

    gcloud bigtable backups describe BACKUP_ID \
        --instance=INSTANCE_ID \
        --cluster=CLUSTER_ID
    

    更改下列內容:

    • BACKUP_ID:備份的專屬 ID
    • INSTANCE_ID:執行個體的永久 ID
    • CLUSTER_ID:叢集的永久 ID

刪除備份

如要在建立備份副本後刪除備份,請檢查狀態,確認複製作業已完成。

控制台

  1. 前往 Google Cloud 控制台的 Bigtable「Instances」(執行個體) 頁面。

    開啟執行個體清單

  2. 按一下包含備份的執行個體。

  3. 按一下左側導覽窗格中的「Backups」(備份)。

  4. 找到要刪除的備份,展開「Restore」(還原) 字樣旁的「More」(更多) 選單,然後按一下「Delete」(刪除)。

  5. 在「Confirm deletion」(確認刪除) 欄位中輸入備份 ID,然後按一下「Delete」(刪除)。

gcloud

  1. 查看備份清單:

    gcloud bigtable backups list --instance=INSTANCE_ID
    

    將 INSTANCE_ID 替換為執行個體的永久 ID。

    終端機會顯示備份清單。

  2. 記下備份 ID 和儲存備份的叢集 ID。

  3. 請執行 gcloud bigtable instances backups delete 指令。

    gcloud bigtable backups delete BACKUP_ID \
        --instance=INSTANCE_ID \
        --cluster=CLUSTER_ID
    

    更改下列內容:

    • BACKUP_ID:您記下的備份 ID
    • INSTANCE_ID:執行個體的永久 ID
    • CLUSTER_ID:您記下的叢集 ID

後續步驟