在 S3 儲存貯體中使用版本控制 - Amazon Simple Storage Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 S3 儲存貯體中使用版本控制

在 Amazon S3 中使用版本控制是在相同儲存貯體中保留多個物件版本的一種方式。您可以使用 S3 版本控制功能來保留、擷取和恢復在儲存貯體中所存放每個物件的各個版本。透過版本控制,您就可以更輕鬆地復原失誤的使用者動作和故障的應用程式。啟用儲存貯體的版本控制後,如果 Amazon S3 同時接收對同一物件的多個寫入要求,則會存放所有物件。

啟用版本控制的儲存貯體可讓您復原意外刪除或覆寫的物件。例如,如果您刪除某個物件,Amazon S3 會將刪除標記插入到該物件,而不是永久移除它。刪除標記會成為物件的目前版本。如果您覆寫物件,則會在儲存貯體中產生新的物件版本。您一律可以還原舊版本。如需詳細資訊,請參閱「刪除啟用版本控制功能之儲存貯體中的物件」。

儲存貯體預設停用 S3 版本控制,您必須明確啟用它。如需詳細資訊,請參閱「在儲存貯體上啟用版本控制」。

注意
  • SOAP API 不支援 S3 版本控制。HTTP 上的 SOAP 支援已淘汰,但仍可透過 HTTPS 取得。SOAP 不支援新的 Amazon S3 功能。

  • 標準 Amazon S3 費率適用於所存放和傳送物件的每個版本。物件的每個版本都是整個物件,而不只是與舊版本的差異。因此,如果您的所存放物件有三個版本,則會向您收取三個物件的費用。

未使用版本控制、已啟用版本控制和暫停版本控制的儲存貯體

儲存貯體可以是以下三種狀態之一:

  • 未進行版本控制 (預設)

  • 已啟用版本控制

  • 已暫停版本控制

您可以在儲存貯體層級啟用和暫停版本控制。儲存貯體的版本控制一旦啟用,就無法再回復為未使用版本控制狀態。不過,您可以暫停儲存貯體的版本控制。

版本控制狀態會套用至該儲存貯體中的所有 (絕不會是一些) 物件。當您在儲存貯體中啟用版本控制時,所有新物件都會進行版本控制,並提供唯一的版本 ID。在啟用版本控制時已存在於儲存貯體中的物件,之後將始終進行版本控制,並在未來要求修改時提供唯一的版本 ID。注意下列事項:

  • 在您設定版本控制狀態擁有版本 ID null 前,先儲存物件於儲存貯體中。當您啟用版本控制時,儲存貯體中的現有物件不會變更。Amazon S3 在未來請求中如何處理物件的方式會改變。如需詳細資訊,請參閱「使用已啟用版本控制之儲存貯體中的物件」。

  • 儲存貯體擁有者 (或任何具有適當許可的使用者) 可以暫停版本控制,以停止產生物件版本。當您暫停版本控制時,儲存貯體中的現有物件不會變更。Amazon S3 在未來請求中如何處理物件的方式會改變。如需詳細資訊,請參閱「使用暫停版本控制之儲存貯體中的物件」。

搭配使用 S3 版本控制與 S3 生命週期

若要自訂您的資料保留方法及控制儲存體成本,請將物件版本控制搭配 S3 生命週期使用。如需詳細資訊,請參閱 管理儲存生命週期。如需使用 AWS Management Console、 AWS CLI、 AWS 開發套件或 REST API 建立 S3 生命週期組態的相關資訊,請參閱設定儲存貯體的生命週期組態

重要

如果您在未使用版本控制的儲存貯體中有物件過期生命週期組態,而且想要在啟用版本控制時保持相同的永久刪除行為,您必須新增非目前的過期組態。非目前的過期生命週期組態,會管理啟用版本控制之儲存貯體中非目前物件版本的刪除。(已啟用版本控制的儲存貯體會維持一個目前的物件版本,以及零或多個非目前的物件版本。) 如需詳細資訊,請參閱「設定儲存貯體的生命週期組態」。

如需使用 S3 版本控制的相關資訊,請參閱下列主題。