虛刪除總覽

設定 用量

虛刪除功能可保護 Cloud Storage 資料,防止物件或 bucket 遭到意外或惡意刪除。虛刪除功能會將刪除或覆寫的物件和 bucket 保留在虛刪除狀態一段時間,在這段期間,物件或 bucket 無法永久刪除,但可以還原。

系統會預設為所有支援虛刪除功能的值區啟用這項功能,預設保留期限為 7 天。您可以使用標記設定不同的預設保留時長

本頁說明軟刪除的運作方式。

虛刪除政策

如果值區已啟用虛刪除功能,刪除值區或值區內的物件時,資源會進入虛刪除狀態,而不是永久刪除。如要在值區上啟用虛刪除功能,請設定虛刪除政策,定義虛刪除資源的保留時間長度。

虛刪除政策的運作方式如下:

  • 虛刪除政策包含保留期限,可定義虛刪除的資源要保留多久,才會永久刪除。預設保留期限為 7 天,您可以自訂保留期限,範圍為 7 到 90 天。如要停用虛刪除功能,請將保留時長設為 0。

  • 系統會自動為所有新建立的值區設定預設的虛刪除政策,但如果值區使用的產品或功能與虛刪除功能不相容 (例如使用 Rapid Bucket 的區域值區),則不在此限。

  • 您可以在建立或更新值區時,設定、編輯或停用虛刪除政策。

    編輯虛刪除政策時,您所做的變更只會套用至新政策生效後刪除的資源。在新政策生效前刪除的資源,會按照資源刪除時的原始保留時間保留。換句話說,現有虛刪除資源會繼續遵守刪除時的有效保留期限。

    舉例來說,假設您在值區中設定虛刪除政策,保留時長為七天。您刪除物件 object-A.png,該物件會遭到虛刪除。接著,您將政策的保留期限變更為 10 天,然後刪除物件 object-B.png,該物件也會變成軟刪除。object-A.png 會以虛刪除狀態保留七天,object-B.png 則會保留 10 天。

    虛刪除政策的保留期限變更最多需要 30 秒才會生效。

如要瞭解如何設定及管理 bucket 的虛刪除政策,請參閱「設定及管理虛刪除政策」。

虛刪除資源的屬性

如果值區或物件是在啟用虛刪除政策的情況下刪除,資源會進入虛刪除狀態。您可以在保留期限內還原虛刪除的資源。

軟刪除資源具有下列特性:

  • 虛刪除的物件和 bucket 無法讀取、修改或覆寫。 目前僅支援列出或還原作業。

  • 根據預設,虛刪除的資源會從清單作業中隱藏。如要查看軟刪除的資源,您必須明確指定標記或篩選器,才能查看資源。

  • 您無法修改虛刪除的 bucket 或列出其內容,必須先還原 bucket 本身。還原虛刪除 bucket 的方法會影響 bucket 中的物件是否也會還原:

    • 您可以使用 Google Cloud 控制台,同時還原虛刪除的值區及其物件。

    • 使用 Google Cloud CLI 或 JSON API 還原 bucket 時,系統只會還原空 bucket。然後,您必須在另一個作業中還原物件,才能復原內容。

  • 如果新運作中的 bucket 使用了某個 bucket 名稱,您必須先移除衝突的運作中 bucket,才能還原已軟刪除的 bucket。

  • 如果 Google Cloud 專案遭到刪除,即使值區或物件已啟用虛刪除功能,您也無法使用虛刪除功能還原這些項目。

  • 部分 Cloud Storage 功能與虛刪除政策相容,但不會影響虛刪除的物件。這類功能包括自動調整級別、物件生命週期管理、值區鎖定和物件保留鎖定。

如需還原虛刪除物件或 bucket 的操作說明,請參閱「還原虛刪除物件」或「還原虛刪除 bucket」。

物件還原

還原虛刪除的物件時,Cloud Storage 會在同一個值區中建立該物件的新使用中副本。原始的虛刪除版本會保留在背景,直到保留期限正式到期為止。以下清單說明核心還原行為:

  • 還原物件時,Cloud Storage 會產生新版本的物件。如要進一步瞭解物件版本,請參閱「物件不變原則」。

  • 如果還原虛刪除的物件時,已有同名的使用中物件,還原的物件會覆寫現有的使用中版本。系統會自動虛刪除先前使用中的覆寫物件。

    在這個特定情境中,值區會包含兩個還原的物件副本 (一個是新的使用中副本,另一個是舊的虛刪除副本),以及遭覆寫物件的新虛刪除版本。

  • 無論物件的原始儲存層或任何有效的自動調整級別設定為何,所有還原的物件都會寫入 Standard Storage 儲存空間級別。

物件還原方法

您可以根據規模需求,使用下列任一執行路徑還原軟刪除的物件:

還原路徑重複的物件

雖然不常見,但啟用階層式命名空間的 bucket 中,可能會出現名稱和產生編號值相同的重複虛刪除物件。如果啟用階層命名空間,且 bucket 中有同名物件,重新命名含有這些物件的資料夾時,就可能發生衝突。在這種情況下,兩個虛刪除的物件可能巧合地共用相同的版本編號,但這種情況很少發生。

如要瞭解這個情境,請參閱以下範例:

  1. 您在名為 my-folder-A 的資料夾中,有一個名為 cat.png 的物件。 cat.png 的產生版本編號為 999。您刪除 cat.png,該項目會進入虛刪除狀態。

  2. 刪除空白的上層資料夾 my-folder-A

  3. 儲存空間的其他位置有名為「my-folder-B」的資料夾。這個資料夾內有名為 cat.png 的不同物件。純屬巧合,這個 cat.png 物件也獲派 999 的產生版本編號。將 my-folder-B 重新命名為 my-folder-A。由於有階層式命名空間,物件路徑會變更為 my-folder-A/cat.png

  4. 您刪除第二個 cat.png,這會變成虛刪除。

現在有兩個名為 cat.png 的虛刪除物件,產生編號為 999

如要還原、列出或存取重複項目中的特定軟刪除物件版本,您必須在要求中提供專屬的 restoreToken 參數。在啟用階層式命名空間的 bucket 中還原、列出或存取虛刪除的物件版本時,必須加入 restoreToken 參數。如果存在重複物件,但您未加入 restoreToken 參數,系統就會顯示錯誤訊息,提示您提供權杖。如果提交的權杖、名稱或版本編號有誤,系統會傳回錯誤訊息,指出找不到物件。如要進一步瞭解 restoreToken 參數,請參閱objects.restore 方法

定價

虛刪除的物件會持續產生儲存空間費用,直到保留期限結束並永久刪除為止。如果物件在最短儲存時間結束前遭到虛刪除,系統會收取提前刪除費用,除非該物件儲存在 Standard Storage。

如要進一步瞭解與軟刪除相關的費用,請參閱 Cloud Storage 定價

使用虛刪除功能時,降低暫時物件的費用

如果值區主要包含短期暫時物件,則啟用值區的軟刪除功能可能會導致儲存空間費用大幅增加。為協助您降低臨時物件的費用,建議採取下列做法:

  • 如要重新命名物件,請使用 objects.move JSON API 方法自動重新命名物件。請勿透過複製物件來重新命名。

  • 將暫時性物件儲存在未啟用虛刪除功能的值區中。

臨時物件通常會在刪除前經歷短暫的生命週期。 暫時物件可能包括:

  • 用於建立複合物件的來源資料

  • 為短期用途重新產生的資料,例如查詢結果或暫存檔案

  • 寫入和刪除頻率高的工作負載資料 (例如每天刪除數百萬筆資料)

  • 可永久刪除的資料,不會對生產連續性造成任何影響

與其他產品和功能的互動

啟用軟刪除功能後,系統會以以下方式處理其他產品和功能:

  • Rapid Bucket:使用 Rapid Bucket 的區域 bucket 不支援軟刪除。

  • 物件生命週期管理

    • 物件生命週期管理規則不會影響已軟刪除的物件。您無法使用物件生命週期管理功能變更虛刪除物件的儲存空間級別,也無法永久刪除這類物件。

    • 物件生命週期管理刪除的物件會變成虛刪除狀態。如果 bucket 也啟用物件版本管理功能,刪除的使用中物件會變成非現行物件,刪除的非現行物件則會變成軟刪除。

  • 物件版本管理:刪除非現行物件時,系統會虛刪除該物件。

  • XML API 多部分上傳作業:XML API 多部分上傳作業的部分不會受到軟刪除保護。

  • 自動分類

    • 系統不會針對虛刪除的物件收取自動調整級別管理費用。

    • 自動調整級別功能不會變更虛刪除物件的儲存空間級別。

    • 還原虛刪除的物件時,系統會將產生的物件設為 Standard Storage 儲存空間級別。

  • 值區鎖定物件保留鎖定功能:這些功能會防止您刪除物件,直到物件符合保留政策為止。虛刪除功能會將刪除的物件保留一段虛刪除保留期限,提供額外一層保護。

  • Pub/Sub 通知:還原物件的暫時刪除版本會觸發 OBJECT_FINALIZE 事件。

  • 代管資料夾:軟刪除無法還原代管資料夾的 IAM 政策。如果您虛刪除物件,並刪除授予物件 IAM 政策的受管理資料夾,可能必須先重新建立這些 IAM 政策,才能取得還原虛刪除物件所需的權限。

  • 標記:如果您建立 bucket 時未自行加入虛刪除設定,Cloud Storage 預設會建立 bucket,並將虛刪除保留時間設為七天。如要變更這項預設值,請使用代碼。這個標記可將新 bucket 的預設保留時長變更為 7 到 90 天之間的任何值,也可以將預設值變更為在新 bucket 上停用虛刪除功能。您也可以使用標記,根據預設停用軟刪除。

  • 建議工具:您可以啟用 Recommender API,根據 Cloud Billing 費用和用量,接收啟用或停用軟刪除功能的建議和洞察資訊。詳情請參閱「軟刪除建議工具」。

後續步驟