儲存空間(Bucket)開啟版本控制後,針對資料的覆蓋和刪除操作將會以歷史版本的形式儲存下來。當Bucket累積了大量的歷史版本或者到期刪除標記時,您可以結合生命週期規則刪除不必要的歷史版本以及到期刪除標記,從而減少儲存成本並有效提升列舉Object的效能。
前提條件
目標Bucket已開啟版本控制。詳情請參見開啟版本控制。
情境說明
當目標儲存空間examplebucket開啟版本控制後,王先生在某一年2月8日上傳了名為example.txt的檔案,此後在同一年份的不同時間內對example.txt檔案進行了多次覆蓋或不指定versionID的刪除操作,OSS對該檔案的每一次覆蓋和刪除操作均產生全域唯一的隨機字串versionID(圖示中的versionID均以簡易版本號碼標識,不代表實際versionID),並將檔案以歷史版本的形式儲存在目標Bucket中。
檔案經多次覆蓋和不指定versionID的刪除操作後,結合業務情境的變化,王先生需實現如下需求:
僅保留5月8日以及9月10日上傳的檔案版本。
將5月8日產生的最新歷史版本檔案恢複為目前的版本。
操作步驟
保留指定版本檔案
假設目前時間為9月10日,則通過配置以下生命週期規則可實現僅保留5月8日以及9月10日上傳的檔案版本。
登入OSS管理主控台。
單擊Bucket 列表,然後單擊examplebucket。
選擇。
單擊創建規則,按如下說明配置生命週期規則,其餘參數保留預設配置。
地區
配置項
配置方法
基礎設定
狀態
選擇啟動。
策略
選擇設定到整個Bucket。
目前的版本檔案執行原則設定
檔案時間策略
選擇清理對象刪除標記。
歷史版本檔案執行原則設定
檔案時間策略
選擇指定天數。
生命週期管理規則
選擇最後一次修改時間90天,Object會在其被轉換為歷史版本的90天后到期,並在到期的第二天被刪除。
說明本樣本中5月8日上傳的檔案在9月10日成為歷史版本,距離目前時間(9月10日)不到90天,因此5月8日上傳的檔案將作為歷史版本儲存,不會被刪除。
片段執行原則設定
碎片過期策略
選擇指定天數。
片段規則
設定為90天,因分區上傳產生的片段90天后到期,並在到期的第二天被刪除。
單擊確定。
恢複指定版本檔案
將5月8日產生的最新歷史版本檔案恢複為目前的版本的操作步驟如下:
在examplebucket管理頁面,選擇文件管理>檔案清單。
單擊歷史版本右側的顯示。
找到更新時間為5月8日對應版本的example.txt檔案。
單擊目標歷史版本右側的恢復。
注意事項
使用生命週期到期策略管理不同版本Object時:
目前的版本Object到期策略
在開啟版本控制的情況下,如果生命週期規則中的到期策略作用於目前的版本Object,OSS會添加刪除標記將目前的版本Object作為歷史版本Object保留,而不是刪除目前的版本Object,且刪除標記將成為Object的目前的版本。
在暫停版本控制的情況下,如果生命週期規則中的到期策略作用於目前的版本Object,OSS會添加刪除標記作為目前的版本,且versionID為null。由於OSS保證同一個Object只會有一個versionID為null的版本,因此原versionID為null的版本將被覆蓋。
歷史版本Object到期策略
在開啟或暫停版本控制的情況下,如果生命週期規則中的到期策略作用於歷史版本Object,OSS會永久刪除歷史版本Object,且無法恢複永久刪除的歷史版本Object。
更多資訊,請參見基於最後一次修改時間的生命週期規則。
相關文檔
您也可以使用API方式恢複檔案。如果需要恢複Object的早期版本為目前的版本,您只需將Object的早期版本拷貝到同一個Bucket中,OSS會將該Object對應早期版本置為目前的版本。更多資訊,請參見CopyObject。