備份 Dataproc Metastore 服務

本頁說明如何備份 Dataproc Metastore 服務。

備份會擷取服務快照,並儲存目前的設定和所有中繼資料。

建立備份後,您可以使用「從備份還原」功能,將快照中儲存的資料填入新的 Dataproc Metastore 服務。

事前準備

必要的角色

如要取得備份 Dataproc Metastore 服務所需的權限,請要求管理員授予下列 IAM 角色:

  • 如要授予 Dataproc Metastore 資源的完整控制權來完成備份,請使用下列任一方法:
  • 如要授予資料庫和表格特定中繼資料的讀取和修改權限: 中繼資料服務的 Dataproc Metastore 中繼資料操作者 (roles/metastore.metadataOperator)
  • 如要使用儲存排定備份作業的 Cloud Storage 物件: Dataproc Metastore 服務代理程式的「Cloud Storage 物件使用者」 (roles/storage.objectUser)

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

這些預先定義的角色具備備份 Dataproc Metastore 服務所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:

所需權限

如要備份 Dataproc Metastore 服務,您必須具備下列權限:

  • 如要備份中繼資料服務,請按照下列步驟操作: metastore.backups.create
  • 如要使用 Cloud Storage 物件,請按照下列步驟操作:
    • orgpolicy.policy.get
    • resourcemanager.projects.get
    • resourcemanager.projects.list
    • storage.managedFolders.create
    • storage.managedFolders.delete
    • storage.managedFolders.get
    • storage.managedFolders.list
    • storage.multipartUploads.*
    • storage.objects.create
    • storage.objects.delete
    • storage.objects.get
    • storage.objects.list
    • storage.objects.restore
    • storage.objects.update

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

如要進一步瞭解特定 Dataproc Metastore 角色和權限,請參閱 Dataproc Metastore 身分與存取權管理總覽

備份注意事項

執行備份作業前,請注意下列事項:

  • 每項 Dataproc Metastore 服務最多可同時建立及儲存七個備份。如果嘗試超過七次備份,備份程序就會失敗。如要建立其他備份,請先手動刪除其中一個已儲存的備份檔案。
  • 備份作業執行期間,您無法更新 Dataproc Metastore 服務,例如變更設定。不過,您仍可使用服務執行一般作業,例如從附加的 Dataproc 或自行管理的叢集存取中繼資料。
  • 您可以建立排程備份,在各種 cron 間隔執行,例如每天執行。

建立備份

如要備份 Dataproc Metastore 服務,請完成下列分頁中的步驟:

控制台

  1. 在 Google Cloud 控制台中,開啟「Dataproc Metastore」頁面:

    開啟 Dataproc Metastore

  2. 在「Dataproc Metastore」頁面中,按一下要備份的服務名稱。

    「服務詳細資料」頁面隨即開啟。

    服務詳細資料頁面
    圖 1. Dataproc Metastore 服務詳細資料頁面
  3. 按一下頁面頂端的「備份」

    「備份」頁面隨即開啟。

  4. 輸入備份名稱

  5. 選用:輸入備份的說明

  6. 如要開始備份作業,請按一下「備份」

    返回「Dataproc Metastore」頁面,確認服務備份作業是否成功。

    備份完成後,無論備份是否成功,Dataproc Metastore 都會自動返回有效狀態

gcloud CLI

  1. 如要備份 Dataproc Metastore 服務,請執行下列 gcloud metastore services backups create 指令:

    gcloud metastore services backups create BACKUP \
        --location=LOCATION \
        --service=SERVICE \
        --description=DESCRIPTION
    

    更改下列內容:

    • BACKUP:備份作業的 ID 或完整 ID。
    • LOCATION:Dataproc Metastore 服務所在的 Google Cloud 區域。
    • :Dataproc Metastore 服務的名稱。SERVICE
    • DESCRIPTION:備份的說明。
  2. 確認服務已備份成功。

    備份完成後,Dataproc Metastore 會自動返回有效狀態,無論備份是否成功。

REST

按照 API 操作說明,使用 API Explorer 備份服務中的中繼資料

備份完成後,Dataproc Metastore 會自動返回有效狀態,無論備份是否成功。

查看備份記錄

如要在 Google Cloud 控制台中查看 Dataproc Metastore 服務的備份記錄,請完成下列步驟:

  1. 在 Google Cloud 控制台中,開啟「Dataproc Metastore」頁面。
  2. 點按導覽列中的「備份/還原」

    備份記錄會顯示在「備份」下方的表格中。

    系統最多會顯示最近 7 個備份。

    刪除 Dataproc Metastore 服務時,系統也會刪除所有相關聯的備份記錄。

刪除備份

如要透過 Google Cloud 控制台刪除 Dataproc Metastore 備份,請完成下列步驟:

  1. 在 Google Cloud 控制台中,開啟「Dataproc Metastore」頁面。
  2. 點按導覽列中的「備份/還原」
  3. 找出要刪除的備份資料,然後按一下設定按鈕。
  4. 點選「刪除」。

排定備份時間

您可以排定備份作業在使用者指定的 Cron 工作間隔執行,包括每天、每週或每月執行。Cron 排程採用 Unix-Cron 字串格式 (* * * * *),也就是一行中的五個欄位,用來指出工作應執行的時間。

舉例來說,您可以設定自訂間隔,每週建立一次備份,例如太平洋時間每週三下午 2 點建立備份。

排定備份時間的注意事項

  • 排定備份作業時,必須指定備份位置,且該位置必須是 Cloud Storage 路徑。
  • 系統一律會以 Avro 檔案格式建立排定的備份。
  • 排定的備份作業預設會以世界標準時間設定。首次建立備份時,可以變更時區。
  • 您可以設定備份作業的執行頻率,例如每小時、每天、每週或每月。可設定的最低間隔為 4 小時。

建立排程備份

首次建立服務時可以設定備份排程,也可以在更新服務時新增。

如要建立具有排定備份作業的 Dataproc Metastore 服務 2,請按照下列分頁中的步驟進行:

控制台

  1. 在 Google Cloud 控制台中,開啟「Dataproc Metastore」頁面。

  2. 在「Dataproc Metastore」頁面頂端,按一下「建立」按鈕。

    「建立服務」頁面隨即開啟。

  3. 選取「Dataproc Metastore 2」

  4. 在「排定的備份」下方,將切換鈕設為「啟用」

  5. 在「位置」下方,選取要儲存排定備份作業的 Cloud Storage 位置。

  6. 選用:在「時間表」下方選取下列項目:

    1. 在「重複」部分,選取重複頻率,例如「每日」或「每週」
    2. 在「At time」(時間) 部分,選取重複時間,例如凌晨 12 點。
    3. 在「時區」中,選取適當的時區,例如「UTC-8」
  7. 其餘服務設定選項請使用系統提供的預設值。

  8. 按一下「提交」

gcloud CLI

  1. 如要排定 Dataproc Metastore 服務的備份作業,請執行下列 gcloud metastore services backups create 指令:

    gcloud metastore services create SERVICE \
       --location=LOCATION \
       --enable-scheduled-backup \
       --scheduled-backup-cron=SCHEDULED_BACKUP_CRON \
       --scheduled-backup-location=SCHEDULED_BACKUP_LOCATION
    

    更改下列內容:

    • SERVICE:備份作業的 ID 或完整 ID。
    • LOCATION:Dataproc Metastore 服務所在的 Google Cloud 區域。
    • SCHEDULED_BACKUP_CRON:備份頻率,以 cron 時間格式指定。舉例來說,Cron 值為 0 0 * * * 會排定每日備份。
    • SCHEDULED_BACKUP_LOCATION:備份的 Cloud Storage 位置。例如:gs://my-bucket/path/to/location

    您也可以將上述值儲存在設定檔中,排定備份作業:

    gcloud metastore services create SERVICE \
       --location=LOCATION \
       --scheduled-backup-configs-from-file=SCHEDULED_BACKUP_CONFIGS_FROM_FILE
    

    更改下列內容:

    • SCHEDULED_BACKUP_CONFIGS_FROM_FILE:JSON 檔案的路徑,其中包含備份設定值 enabledcront_scheduletime_zonebackup_location

    以下範例顯示備份設定檔,該檔案會啟用排程備份、將備份排程設為每小時一次、將時區指定為太平洋標準時間,並將備份位置定義為 Cloud Storage 值區。您可以從常見的 tz 資料庫時區清單中選擇時區。

    {
    "enabled": true,
    "cron_schedule": "0 0 * * *",
    "time_zone": "PST",
    "backup_location": "gs://my-bucket/path/to/location"
    }
    

REST

按照 API 說明,使用 APIs Explorer 建立排程備份

更新排定的備份

如要更新已設定排程備份的 Dataproc Metastore 服務 2,請按照下列分頁中的步驟操作:

控制台

  1. 在 Google Cloud 控制台中,開啟「Dataproc Metastore」頁面。

  2. 在「Dataproc Metastore」頁面中,按一下要排定備份時間的服務名稱。

  3. 在「排定的備份」下方,將切換鈕設為「已啟用」

  4. 在「位置」下方,選取要儲存排定備份作業的 Cloud Storage 位置。

  5. 選用:在「時間表」下方,選取下列欄位的值:

    1. 在「重複」部分,選取重複頻率,例如「每日」或「每週」
    2. 在「At time」(時間) 部分,選取重複時間,例如凌晨 12 點。
    3. 在「時區」中,選取適當的時區,例如「UTC-8」

gcloud CLI

  1. 如要排定 Dataproc Metastore 服務的備份作業,請執行下列 gcloud metastore services backups update 指令:

    gcloud metastore services update SERVICE \
       --location=LOCATION \
       --enable-scheduled-backup \
       --scheduled-backup-cron=SCHEDULED_BACKUP_CRON \
       --scheduled-backup-location=SCHEDULED_BACKUP_LOCATION \
    

    更改下列內容:

    • SERVICE:排定備份作業的 ID 或完整 ID。
    • LOCATION:Dataproc Metastore 服務所在的 Google Cloud 區域。
    • SCHEDULED_BACKUP_CRON:備份頻率,以 cron 時間格式指定。舉例來說,Cron 值為 0 0 * * * 會排定每日備份。
    • SCHEDULED_BACKUP_LOCATION:排定備份作業的 Cloud Storage 位置。例如:gs://my-bucket/path/to/location

    您也可以使用儲存在設定檔中的先前值,更新排定的備份作業:

    gcloud metastore services update SERVICE \
       --location=LOCATION \
       --scheduled-backup-configs-from-file=SCHEDULED_BACKUP_CONFIGS_FROM_FILE
    

    更改下列內容:

    • SCHEDULED_BACKUP_CONFIGS_FROM_FILE:備份設定的 JSON 檔案路徑。

    以下範例顯示的備份設定檔會停用排定的備份作業。

    {
    "enabled": false,
    }
    

REST

按照 API 操作說明,使用 APIs Explorer 更新排定的備份作業

查看排定的備份

如要查看已設定排程備份的 Dataproc Metastore 服務 2,請按照下列分頁中的步驟進行:

控制台

  1. 在 Google Cloud 控制台中,開啟「Dataproc Metastore」頁面。

  2. 按一下頁面頂端的「備份」

    「備份」頁面隨即開啟,並顯示排定的備份作業。請注意,備份檔實際上會儲存在您在排定備份設定中提供的 Cloud Storage bucket。

gcloud CLI

  1. 執行下列 gcloud storage ls 指令:

    gcloud storage ls gs://BUCKET_NAME/SERVICE/LOCATION
    

    更改下列內容:

    • BUCKET_NAME:儲存您要查看排定備份作業的 Cloud Storage bucket 路徑。
    • SERVICE:排定備份作業的 ID 或完整 ID。
    • LOCATION:Dataproc Metastore 服務所在的 Google Cloud 區域。

REST

按照 API 操作說明,使用 API Explorer 查看排定的備份作業

排解常見問題

後續步驟