【AWS】用語を整理しながら学ぶAWS - part7 Simple Storage Service

# はじめに

この記事では AWS Cloud Tech を通して Simple Storage Service(以下、S3) を学習していく記事です。
主な内容としては実践したときのメモを中心に書きます。（忘れやすいことなど）
誤りなどがあれば書き直していく予定です。

https://kws-cloud-tech.com/

## Simple Storage Service とは

公式サイトからの引用

> Amazon Simple Storage Service (Amazon S3) は、
> 業界をリードするスケーラビリティ、データ可用性、セキュリティ、
> およびパフォーマンスを提供するオブジェクトストレージサービスです。

ぎょ、業界をリードするすんごいオブジェクトストレージサービス

できること

- データの蓄積
- 静的ホスティング
- バックアップ
- クラウドストレージ
- ビッグデータ分析

とにかくできることが多いそんな S3 の特徴をまとめます。

## S3 の基本

S3 ではバケットという単位でオブジェクトを管理してバケットポリシーを利用することで
セキュリティやコンプライアンスを守ることができます。

横文字多すぎるんよ。。。

### バケット

オブジェクトを管理する単位のことです。

### オブジェクト

実際にユーザが格納するファイルのことです。

### バケットポリシー

バケットにアクセスする為のルールを定める機能
PARC モデルというモデルを採用しており、コードで定義することができます。

## イレブンナインの耐久性

公式サイトからの引用

https://aws.amazon.com/jp/s3/faqs/

> Amazon S3 は、複数のシステムにまたがる S3 オブジェクトを
> すべて自動的に作成して保存しており、
> 99.999999999% (9 x 11) のデータ耐久性を実現するように設計されています
>
> たとえば、Amazon S3 に 10,000,000 のオブジェクトが格納されている場合、
> 1 つのオブジェクトで損失が起きる予測平均発生率は、10,000 年に 1 度ということになります。

とにかく壊れにくいつよつよストレージサービスです。
隕石とか大地震とか天変地異でも起きない限りは壊れる心配はしなくても良いレベルということです。

また、Amazon クラウドのブログに投稿された記事ではかなりの自信が伺えます。

https://aws.amazon.com/jp/blogs/aws/new-amazon-s3-reduced-redundancy-storage-rrs/

> you can simply store your data in S3 without having to worry about backups, scaling, device
> failures, fires, theft, meteor strikes, earthquakes, or toddlers.
>
> S3 にデータをただ保存するだけで、バックアップやスケーリング、デバイスの故障、火事、盗難、隕石の落下、
> 地震、あるいは子どものいたずらといった心配から解放される。

※人為的なミスで 2017 年頃に大規模障害を起こしていますが耐久性とは無関係です。

## 柔軟なストレージクラス

https://aws.amazon.com/jp/s3/storage-classes/

S3 には様々なストレージクラスがあります。
ストレージクラスとはざっくり、管理方法の種類のことです。課金モデルにも影響します。

- S3 標準
- S3 標準 IA
- S3 1 ゾーン IA
- S3 Glacier
- S3 Glacier Deep Archive
- S3 Intelligent-Tiering

### S3 標準

いわゆるスタンダードなストレージクラスであり、これがデフォルトで利用されます。
可用性は 1 年で 99.99%になるように設計されています。

### S3 標準 IA

デフォルトのストレージクラスクラスに IA というオプションが加わったストレージクラスです。
IA つまりは Infrequency Access 低頻度アクセスモデルの S3です。

可用性は 1 年で 99.99%になるように設計されています。

頻繁にアクセスしないが、稀にアクセスしてすぐに取り出したいときに利用します。

### S3 1 ゾーン IA

S3 標準 IA と基本は同じだけども一つの AZ にしか保存しません。
S3 標準 IA と比較するとコストを 20%削減できます。

耐久性は同じですが、可用性は 1 年で 99.5%になるように設計されています。(チョットだけ低い)

### S3 Glacier Flexible Retrieval(旧 S3 Glacier)

::: note info

S3 Glacier の 名称は2021年11月に変更となりました。

詳細はAWSのリリース情報を参照してください。
[Amazon S3 Glacier Flexible Retrieval](https://aws.amazon.com/jp/about-aws/whats-new/2021/11/amazon-s3-glacier-storage-class-amazon-s3-glacier-flexible-retrieval/#:~:text=Amazon%20S3%20Glacier%20%E3%82%B9%E3%83%88%E3%83%AC%E3%83%BC%E3%82%B8%E3%82%AF%E3%83%A9%E3%82%B9%E3%81%AF%20Amazon%20S3%20Glacier%20Flexible,%E6%9C%80%E9%81%A9%E5%8C%96%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82)

:::

アーカイブに利用します。
取り出しに数分から数時間とよく説明されていますが

実際は取り出しオプションというのが 3 種類用意されており
それが短いやつで数分、長いやつで数時間という意味です。

他の主な特徴

- 3 つ以上 の AZ に保管
- イレブンナインの耐久性

ちなみに

https://twitter.com/ymd65536/status/1365216350600192004?s=20

### S3 Glacier Deep Archive

アーカイブに利用
Glacier のつよつよ版、磁気テープの代替になります。

主な特徴

- 3 つ以上の AZ に保管
- イレブンナインの耐久性
- 理想のアクセス頻度は 1 年に 1 回か 2 回
- 12 時間以内に復元

このオプションを利用される主なお客様は金融とか医療など
大変厳しい業界でご活躍されているお客様が利用されるそうです。

### S3 Intelligent-Tiering

低頻度階層と高頻度階層の 2 つに分かれ、ユーザのアクセス頻度に応じてデータを移動します。

- 30 日間アクセスのないオブジェクトは低頻度階層に移動
- アクセスがあったオブジェクトは自動的に高頻度階層に移動

つまり、良しなにやってくれる感じのストレージクラスです。

## バージョニング

https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/Versioning.html

格納したオブジェクトのバージョン管理を行う機能です。

デフォルトではバージョニングは無効になっており、バケットのバージョニングには 3 種類の状態が存在する。

3つの状態

- 無効
- 有効
- 停止

誤って削除しても直ちに戻せるというのは凄いですね。
※厳密には削除されず、削除マーカーがオブジェクトに貼られます。

ちなみによく見るバージョン管理ですが

> 20210408-業務資料.xlsx
> 20210331-業務資料.xlsx
> 20210408-業務資料-r1_final.xlsx
> 20210408-業務資料-r2_draft.xlsx
> 20210408-業務資料-r2_draft_final.xlsx
> 20210408-業務資料-r2_final_draft.xlsx
> 20210408-業務資料-r2_final_draft_r2.xlsx

あああああああああああああああああああああああああああああああ
あああああああああああああああああああああああああああああああ！！！わっかんねえ！！！

### ライフサイクルマネジメント

簡単に言えば、たまったファイルを一定の期間のみ保存しておき
ある期間を過ぎたファイルから順にアーカイブできたり、他のストレージクラスに移行できる機能です。

### お、お値段

- 保管料
  ストレージクラスに左右されます。

- 転送料
  In は無料、Out は有料と覚えると楽、同一リージョン間での転送やデータを受信することについては無料です。

例 1
同一リージョンの AWS サービスとの連携は無料です。

例 2
S3 からインターネット回線を通してメディアを配信するのは課金対象です。

- リクエスト料  
リクエストの種類と数によって変わる。DELETE は無料です。

## まとめ

S3 の主な特徴について取り上げました。
他にもいろんな機能があるのでハンズオンしていきたいですね。
最近はサーバレスと SPA が流行りなのでそのあたりなんでもイイから触ってみたいかもです。

## おわり