刪除不再需要的物件有助於降低儲存費用、遵守資料保留規定,以及整理 bucket。Cloud Storage 支援兩種主要物件刪除方法:
- 單一物件刪除:刪除個別物件,以進行目標更新。
- 大量刪除物件:同時刪除多個物件,或按照自動排定的時間表刪除。
針對每種刪除方法,Cloud Storage 提供各種工具,可手動、以程式輔助或透過自動化政策刪除物件。請查看這些刪除方法和可用工具,為工作負載選擇最合適的做法。
如需刪除物件的逐步操作說明,請參閱刪除物件。
刪除單一物件
單一物件刪除功能可精準控管特定資料。如要立即對儲存空間的資料進行特定更新,通常會刪除單一物件。單一物件刪除作業的常見用途包括:
修正錯誤:移除您不慎上傳的物件,或含有錯誤資料的物件。
清除:完成工作後手動移除暫時物件或記錄。
應用程式邏輯:在發生應用程式事件時自動移除物件,例如使用者刪除個人資料相片。
安全性和法規遵循:刪除物件以移除私密資訊。
單一物件刪除工具
如要從值區刪除單一物件,請使用下列任一工具。每個工具會針對每個物件傳送個別的 DELETE 要求。
| 工具 | 說明 |
|---|---|
| Google Cloud console | 在 Google Cloud 控制台中刪除個別物件。 |
| Google Cloud CLI | 使用 gcloud storage rm 指令刪除物件。 |
| 用戶端程式庫 | 使用支援的語言 (例如 C++、C#、Go、Java、Node.js、PHP、Python 或 Ruby),以程式輔助方式刪除物件。 |
| REST API | 使用 JSON API 或 XML API 刪除物件。 |
大量刪除物件
大量刪除物件功能專為大型資料集的高效率作業而設計。使用大量刪除功能管理儲存空間費用,並自動清理 bucket 中的資料。大量刪除物件的常見用途包括:
成本最佳化:移除作業不再需要的大型資料集,例如舊記錄或暫時建構構件。
法規遵循自動化:在特定保留期限 (例如 30 天) 後刪除物件,自動強制執行資料保留政策。
值區遷移或停用:遷移資料或關閉專案時,清除數百萬或數十億個物件。
資料管道清理:管道產生最終報表或資料集後,移除中繼處理物件。
大量刪除物件的工具
如要大量刪除物件,請使用下列任一工具。與個別要求相比,這些工具的處理量更高,且負擔較小。
| 工具 | 說明 |
|---|---|
| Google Cloud console | 以互動方式刪除最多一百萬個物件。提出刪除要求後,Cloud Storage 會在背景處理刪除作業。如要查看批次刪除狀態,請按一下 Google Cloud 控制台標題中的「通知」按鈕 ( notifications)。 |
| Google Cloud CLI | 使用 gcloud storage rm --recursive 指令刪除共用前置字串的所有物件。這個指令適合從指令列大量刪除中小型規模的資料。 |
| 多個物件刪除 XML API | 在單一 使用 XML API 刪除多個物件時,Cloud Storage 會產生資料存取稽核記錄。啟用資料存取稽核記錄後,這些記錄會包含整體要求和個別物件刪除作業的詳細資料。詳情請參閱「多個物件刪除 XML API 的稽核記錄」。 多個物件刪除 XML API 有下列限制:
|
| Storage 批次作業 | 使用全代管服務,根據資訊清單檔案刪除最多數十億個物件,並內建追蹤和重試功能。 使用儲存空間批次作業執行下列工作:
|
| 物件生命週期管理 | 根據使用者定義的生命週期規則 (例如物件存在時間或儲存空間級別),自動刪除物件。如要大量刪除物件,請在值區中設定物件生命週期管理規則。將條件 Age 設為 0 天,並將動作設為 Delete。設定規則後,Cloud Storage 會非同步執行大量刪除作業。
|
| 批次 API 要求 | 使用支援的用戶端程式庫或直接使用 JSON API 時,可將多個刪除要求批次處理為單一 HTTP 要求。這種批次處理方式可減少用戶端連線負擔和延遲。 |
選擇刪除方法
刪除物件的最佳方法和工具取決於物件數量和工作流程需求。請使用下列決策矩陣,為您的用途選擇合適的方法:
| 用途 | 刪除方法 | 建議工具 |
|---|---|---|
| 刪除個別物件或少量特定物件 | 刪除單一物件 | Google Cloud 控制台、gcloud storage rm、用戶端程式庫或 REST API |
| 在單一程式輔助要求中,最多可刪除 1,000 個物件 | 大量刪除物件 | 多個物件刪除 XML API、Amazon S3 CLI 或 Amazon S3 相容的用戶端程式庫 (例如 Boto3) |
| 刪除具有共同前置字串的物件 | 大量刪除物件 | gcloud storage rm --recursive |
| 在瀏覽器中以互動方式刪除最多一百萬個物件 | 大量刪除物件 | Google Cloud console |
| 使用內建追蹤功能,以非同步方式刪除數百萬或數十億個物件 | 大量刪除物件 | Storage 批次作業 |
| 根據條件 (例如物件的建立時間或儲存空間級別) 自動刪除物件 | 大量刪除物件 | 物件生命週期管理 |
後續步驟
- 不再需要值區時,請刪除值區。
- 瞭解物件版本管理,在同一個值區中保留物件的多個版本。
- 設定物件生命週期管理,根據自訂條件自動刪除物件。
- 使用儲存空間批次作業大規模刪除物件。
- 使用虛刪除功能,避免物件遭到意外刪除。
- 使用物件保留鎖定和值區鎖定功能,強制執行資料保留政策。