如何開啟阿里云對象存儲OSS防誤刪新功能?

來源:阿里云
作者:阿里云
時間:2020-07-14
2502
OSS每年都會遇到多起客戶誤刪除數(shù)據(jù)的事件,為此OSS開發(fā)了版本控制功能,開啟該特性后,可以在誤刪除數(shù)據(jù)時通過歷史版本找回數(shù)據(jù)。

一、背景

阿里云對象存儲OSS是保存海量數(shù)據(jù)的平臺,支持豐富的應用。在使用過程中難免會遇到誤操作、程序Bug、覆蓋寫等導致數(shù)據(jù)被刪除的場景,對于數(shù)據(jù)的丟失會非常著急,后果也非常嚴重,甚至某些情況下還會影響你的職業(yè)生涯。OSS每年都會遇到多起客戶誤刪除數(shù)據(jù)的事件,為此OSS開發(fā)了版本控制功能,開啟該特性后,可以在誤刪除數(shù)據(jù)時通過歷史版本找回數(shù)據(jù)。

二、版本控制技術介紹

存儲空間(Bucket)開啟版本控制后,OSS會為Bucket中所有文件(Object)的每個版本指定唯一的ID值,且Bucket中現(xiàn)有Object的內(nèi)容、權限保持不變。開啟版本控制后,還能夠防止意外覆蓋或者刪除Object,并允許查詢、恢復Object的歷史版本。詳細信息,請參考官網(wǎng)介紹。

ia_700000005.png

如上圖所示,通過PUT操作第一次上傳同名Object(key=example.jpg)時,原始Object版本(ID=111111)作為歷史版本,生成的新版本(ID=222222)將作為當前版本保存在存儲空間中。當再次上傳同名Object時,原始Object版本(包括ID=111111以及ID=222222)將作為歷史版本,而生成的新版本(ID=333333)則作為當前版本保存在Bucket中。

三、數(shù)據(jù)防誤刪實際操作

3.1開啟版本控制

開啟版本控制有兩種方式:

創(chuàng)建時,選擇開通版本控制。

創(chuàng)建后,設置版本控制。

ia_700000006.png

因此,通過創(chuàng)建后設置版本控制,可以對存量的OSS數(shù)據(jù)設置版本控制,有效的保障歷史數(shù)據(jù)。

3.2上傳對象

開啟版本控制后,在控制臺有顯示對象的歷史版本框,選擇該框則可以顯示對象的歷史版本,如下圖所示。

ia_700000007.png

通過在控制臺上傳同名對象,則會生成多個版本,其中顯示(最新版本)的那個對象是最新對象,更新時間也是最近的時間。

3.3刪除對象

開啟版本控制后,刪除對象并不會真正刪除,而是插入刪除標記,如下圖所示。

ia_700000008.png

刪除對象后,如果沒有選擇顯示對象的歷史版本,則在控制臺顯示該文件不存在,但實際上對象并未刪除,因此可以支持后面的恢復操作。

3.4快捷的恢復數(shù)據(jù)

由于開通了版本保護,數(shù)據(jù)歷史版本并未刪除,可以采用下圖所示的順序,DIY恢復數(shù)據(jù)。第一步,選中顯示對象的歷史版本,此時可以看到歷史版本,其中顯示(刪除標記)表示該對象被刪除。第二步,刪除該(刪除標記)就可以讓數(shù)據(jù)在控制臺重新可見。第三步,刪除標記成功后,最近的版本被恢復為(最新版本),此時不管是否選中顯示對象的歷史版本,都可以在控制臺看到該對象。

ia_700000009.png

因此,開通了版本控制后,可以非常便捷的DIY恢復數(shù)據(jù),不用再擔心“誤操作、程序Bug、覆蓋寫”等帶來的嚴重影響。

四、數(shù)據(jù)誤刪的批量修復實戰(zhàn)(工具)

OSS控制臺提供了簡單的單對象恢復能力,但是對于刪除目錄下的海量文件,效率就非常低下了,需要頻繁的UI點擊,修復速度太慢。因此OSS提供了ossutil工具,能夠批量修復數(shù)據(jù),提高修復效率。

4.1指定前綴批量修復

ia_700000010.png

整個過程如上圖,參考命令為:

微信圖片_20200714105249.png

其中,刪除標記會顯示"true true",所以只需要刪除匹配前綴的刪除標記,即可恢復對象。

4.2指定時間批量修復

ia_700000011.png

整個過程如上圖,參考命令為:

微信圖片_20200714105335.png

只需要刪除匹配時間范圍的刪除標記,即可恢復對象。

4.3指定修復列表文件批量修復

ia_700000012.png

整個過程如上圖,參考命令為:

微信圖片_20200714105442.png

只需要遍歷修復列表文件,并刪除對象的刪除標記,即可恢復對象。

五、版本控制和生命周期結合實現(xiàn)類回收站(成本優(yōu)化)

設置版本控制后,即使刪除對象也會保留歷史版本,這會帶來成本的增加。為了支持版本控制的數(shù)據(jù)恢復,以及成本優(yōu)化,設計了版本控制+生命周期的組合方案,如下圖所示。

ia_700000013.png在生命周期配置中,針對當前版本(刪除標記)和歷史版本設置策略,可以將其在指定時間后轉換為其他類型從而降低成本,也可以選擇在指定天數(shù)(比如30天)之后刪除,從而在30天內(nèi)仍然可以恢復數(shù)據(jù),類似回收站的保留時長。

六、小結

數(shù)據(jù)誤刪除是非常嚴重的事件,也是難以預防的問題。通過開通對象存儲OSS的版本控制提供了有效的數(shù)據(jù)保護方案,封裝版本控制+生命周期的回收站也可以幫助更好的優(yōu)化成本和恢復體驗,希望您能盡快開通,保護您的珍貴數(shù)據(jù)。

立即登錄,閱讀全文
原文鏈接:點擊前往 >
文章來源:阿里云
版權說明:本文內(nèi)容來自于阿里云,本站不擁有所有權,不承擔相關法律責任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權,請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質服務商推薦
更多
掃碼登錄
打開掃一掃, 關注公眾號后即可登錄/注冊
加載中
二維碼已失效 請重試
刷新
賬號登錄/注冊
小程序
快出海小程序
公眾號
快出海公眾號
商務合作
商務合作
投稿采訪
投稿采訪
出海管家
出海管家