iT邦幫忙

2021 iThome 鐵人賽

DAY 15
0
IT管理

無限手套 AWS 版:掌控一切的 5 + 1 雲端必學主題系列 第 15

Day 15 儲存寶石:S3 架構 & 版本控管 (Versioning)

https://ithelp.ithome.com.tw/upload/images/20210919/20100951KP1baA1yyC.jpg

今天我們將介紹 AWS S3 的架構及其版本控管(Versioning)的概念。

Bucket 的特性與創建

此處是以 Global 來代表 S3 為跨 Region 的概念(下圖#1)。

首先,我們會在 S3 創建一個 Bucket,並給予一個 Bucket nameing (下圖#2)。由於 Bucket 是一個跨 Region 的資源,也就是 Global 的資源,所以建立 Bucket 名稱時,必須避免與全球的使用者所建之 Bucket 的名字重複。
https://ithelp.ithome.com.tw/upload/images/20210905/201009511IUTUZIAGv.png

創建 Bucket的時候,需要先挑選 Region (下圖#1),而在這裡筆者為 Bucket 取名為 Bucket instance (下圖#2),裡面可以放上許多檔案(Object)(下圖#3)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951yNU6R8nMGq.png

用 Key-Value 找 Object

當需要尋找某個 Bucket 底下的 Object 的時候,使用的機制是一個叫作 Key-Value 的搜尋方式。

Key-Value 機制非常單純(下圖#1),即找到某個 Bucket 之後(下圖#2),再往下找到 Object 的 Key (下圖#3),就能拿到此項 Object 的檔案及內容。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951mgmQeTfwS2.png

版本控管(Versioning)與被覆蓋的共用檔案

工作的時候,可能會遇到同事把共用檔案覆蓋掉而找不回來的事件,為了應付這個狀況,S3 提供了一個功能,叫作版本控管(Versioning)。

假設,現在有個人不小心把 Object 覆蓋掉了(下圖#1),如果有開啟 Versioning,S3 就會保留原本的檔案,並在新的檔案上面,給新 Object 一個標籤叫 V1(Versioning1) (下圖#2)。
https://ithelp.ithome.com.tw/upload/images/20210905/201009510BU02qljJm.png

那如果之後又有一個新檔案把它覆蓋掉呢?S3 就會再把檔案往上蓋(下圖#1),並給新的 Object 另外一個 Versioning ID 為 V2 (下圖#2)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951fBVfbgc3kX.png

版本控管(Versioning)與被刪除的共用檔案

在共用檔案被刪除的情況下,Versioning 也同樣有所用處。

假設有人把下圖的 Object 刪掉了(下圖#1),S3 其實不會真的把這個 Object 給刪掉,並會給此項 Object 一個 Delete marker 標籤(下圖#2),告訴共同使用者這個Object被刪除了。

所以,如果有人發現這個 Object 是誤刪(下圖#1),只要把這個被誤刪的 Object 的 Delete marker 砍掉(下圖#2),檔案就會回來。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951QXZEi8hoa8.png

小結

下圖為今天 S3 服務所導出的結構圖。

AWS S3 是一個跨 Region 的概念,為了與其他使用者或其他用途的檔案能有所區分,就必須先建置 Bucket,並在其下儲存檔案,另外利用 Key-Value 方式來找檔案的話,也能更快速、方便地找到檔案。

此外,只要開啟版本控管(Versioning),對於 S3 檔案上的變動,AWS S3 就能夠給予使用者簡單復原檔案的機會,避免不可逆的結果,減少使用者的麻煩。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951sDqLZmcPBa.png

What's Next?

那麼明天,我們將接著介紹「儲存寶石:S3 儲存類別 & 生命週期管理」!


上一篇
Day 14 儲存寶石:S3是什麼? S3 vs EBS 方案比較
下一篇
Day 16 儲存寶石:S3 儲存類別 & 生命週期管理
系列文
無限手套 AWS 版:掌控一切的 5 + 1 雲端必學主題30

尚未有邦友留言

立即登入留言