Day 16 储存宝石:S3 储存类别 & 生命周期管理

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

挑战赛过一半了!今天我们要介绍的是 AWS S3 的储存类别及生命周期管理。

AWS S3 五大储存类别 (AWS S3 Storage Class) 及 Expiration 类别

AWS S3 五大储存类别包含 S3 Standard、S3 Standard-IA、S3 One Zone-IA、S3 Glacier 以及 S3 Glacier Deep Archive(下图#1),而在五类别之外,还有一个 Expiration 类别(下图#2)。

下文将从五个指标包括 Durability、How many AZ、Availability、Retrieve Time 和 Retrive Frequency,两大成本 Storage Cost 与 Retrieve Cost,来细部比较 AWS S3 五大储存类别的不同之处。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951OxMLZc1Xiy.png

AWS S3 五大储存类别的 Durability

假设以 × 代表备份数量,可以看到五大储存方案的 Durability 都是一样高的,如下图:
(为方便讲解,此处假设为 5 个备份数量,实际上并非只能存 5 个备份数量。)
https://ithelp.ithome.com.tw/upload/images/20210905/20100951Lv63d1gNds.png

AWS S3 五大储存类别的 AZ 数量

AWS S3 五大储存类别分别会存在几个 AZ 上呢?

Standard 类别的情况下,在文件上说是大於等於 3 个 AZ,这里以 5 个 ○ 来代表(下图#1)。

S3 Standard-IA 类别的情况下,在文件上也是写大於等於 3 个 AZ,不过 S3 Standard-IA 可存到的 AZ 数量会比 S3 Standard 少一点,故以 4 个 ○ 代表(下图#2)。

S3 One Zone-IA 则如同其名称,只会储存在 1 个 Availability zone 上(下图#3)。

S3 Glacier 及 S3 Glacier Deep Archive 则是几乎与 S3 Standard 一样,可存到的 AZ 数量是几乎差不多的,所以同样用 5 个 ○ 代表(下图#4)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951v0OpGimPud.png

AWS S3 五大储存类别的 Availability

Durability、AZ 的数量及 Availability 三者之间的关系是什麽?

在 S3 Standard 的储存类别下,假设把 5 个备份平分到 5 个 AZ 上储存,也就是说,就算 4 个 AZ 上的资料都坏掉了,资料还是完整保留在剩下 1 个没有坏掉的 AZ 上,而能够对外完整的运作。这就是 S3 Standard 的 Availability 非常高的原因(下图#1)。

在 S3 Standard-IA 的储存类别下,是把 5 个备份存在 4 个 AZ 上, Availability 自然会低一点点(下图#2)。

在 S3 One Zone-IA 的储存类别下,全部 5 个备份都在 1 个 AZ 上,很明显的,只要这个仅此唯一的 AZ 坏掉的话,资料就会不见,所以 S3 One Zone-IA 的 Availability 是最差的(下图#3)。

而 S3 Glacier 与 S3 Glacier Deep Archive 等同於 S3 Standard,所以 Availability 同样是非常高的(下图#4)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951qD1NOiG39q.png

AWS S3 五大储存类别的 Retrieve Time

Retrieve Time 指的是拿取一个资料所需花费的时间。

前三个类别,也就是 S3 Standard、S3 Standard-IA 及 S3 One Zone-IA,拿取一个档案的速度都是非常快的(下图#1),没有太大的差异。

S3 Glacier 获取资料的速度很慢(下图#2),S3 Glacier Deep Archive 取得资料的速度则超级慢(下图#3)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951bVgeW37GyF.png

AWS S3 五大储存类别的 Retrieve Frequency

Retrieve Frequency 指的是拿取资料的频率。

通常在 S3 Standard 里面存放的会是存取拜访频率最高的资料,而 S3 Glacier Deep Archive 则是存放使用频率最低的资料。

S3 五大储存类别的资料取用频率如下图所示,从左而右,由高到低。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951sYOjjMvSny.png

AWS S3 储存空间的两大成本

之所以列出这麽多指标,最重要的目的是为了节省使用S3储存空间的成本,而节省的成本主要有两种,分别是 Storage Cost (下图#1)跟 Retrieve Cost (下图#2)。

Storage Cost 从左到右,由贵到便宜(下图#1);反之,Retrieve Cost 由左到右,由便宜到贵(下图#2)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951kUmoz7BdDS.png

花费从哪边省出来的?

下图橘色底色的部分即是会选择节省花费的部分。

为了节省成本,会利用 S3 Standard-IA 与 S3 One Zone-IA,来牺牲一点 Availability,以换取较便宜的储存花费(下图#1)。同时也会透过 S3 Glacier 和 S3 Glacier Deep Archive,牺牲拿取资料的等待时间,换取更低的成本(下图#2)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951uFI5wR93G4.png

但又看到下方拿取资料的成本,从左至右,是越来越高的(下图#1),而针对此问题,可以来往上看到 Retrive Frequency,从左到右,是大幅下降的(下图#2)。

简单来说,尽管取用资料的成本越来越高(下图#1),但同时,取用资料的成本(下图#1)会跟取用资料的频率抵销掉(下图#2)。结果会发现,真正拿到省钱的地方,其实也就在 Storage Cost 上(下图#3)。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951XBKSeA25dc.png

生命周期管理 (Lifecycle Management)

针对这五大储存类别,除了可以透过手动,慢慢把档案从左到右移过去(下图#1),AWS 还有提供一个好用的功能,叫作 Lifecycle Management (下图#2),可以透过设定自动化的方式,让档案根据特定的设定,一步一步的往右边的储存类别移动,也一步一步的来节省移动成本。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951hN4TetSPEc.png

Expiration 类别

当档案变成 Expire 状态时,S3 就会定期把这些档案给删除掉,进而节省更多成本,如下图:
https://ithelp.ithome.com.tw/upload/images/20210905/20100951Ung2co5UCd.png

小结

下图为本文推导出 AWS S3 Storage Class 的架构图。

在多项指标的比较下,我们更深入的了解在五大储存类别上的使用时机。
并且在使用 S3 储存空间上,可以选择牺牲一点 Availability 及 Retieve Time,节省储存及拿取资料的成本,并透过 Lifecycle Management 来得到较低的移动资料成本。

简单来说,若是能依据指标良好判别,对资料做适当分类,设定生命周期管理,即能让 S3 储存空间发挥更好的效用。
https://ithelp.ithome.com.tw/upload/images/20210905/20100951VpqC1cjb6s.png

What's Next?

那麽明天,我们将接着介绍「储存宝石:【Lab】S3 储存类别 & 生命周期管理」!


<<:  Day 6 - Function 时空旅行 (1) - 参数优化

>>:  Day-06 Classification

day11 : argo gitops服务以及ingress (上)

花了好几天终於完成了所有的基础设施,接着就可以开始部署服务以及使用了,对於k8s来说要部署服务需要的...

全端入门Day07_何谓全端之後端中篇

昨天介绍了後端程序语言,但那些程序语言其实都有自己的框架 今天就来介绍什麽是框架,为什麽要用框架 在...

[DAY-18] 我在这里帮忙 把人类送上月球

前前行提要: 找出你珍视的机会 前行提要: 热情从何处来 炉边撰杜选小故事 当甘乃迪总统造访 火箭发...

DAY 28:Command Pattern,将动作已指令一个一个完成

什麽是 Command Pattern? 将建立指令与实际执行分离 问题情境 PS5 有特定操作 C...

OpenWRT安装与设定

Start进入系统 等它跑一下 好了我们选择那只企鹅(Duck)後点选VNC Remote 进入,按...