AWS CLF入門 - ストレージ編

## はじめに
AWS CLF (AWS Certified Cloud Practitioner) を取得した際の学習記録をアウトプットとして以下に記す。

## リンク
[ネットワーク](https://qiita.com/yashiuri/items/31b2c9c3c49c2584cd01)
[セキュリティ](https://qiita.com/yashiuri01/items/73e5310b09ff41912862)
[コンピューティング](https://qiita.com/yashiuri01/items/9eaf71a1590e7815f9ef)
[コンテナ](https://qiita.com/yashiuri01/items/708b57ee179ae29e72a9)
[スケーリング](https://qiita.com/yashiuri01/items/79050093aff66b0f0665)
[ストレージ](https://qiita.com/yashiuri01/items/6d48d81f5a1651dcc999) 
[データベース](https://qiita.com/yashiuri01/items/159ea63b197f7a836d1c)
[メッセージ](https://qiita.com/yashiuri01/items/d98772b540ef2201c4e2)
[モニタリング](https://qiita.com/yashiuri01/items/64f6dbf38603cdb4828a)
[デプロイ](https://qiita.com/yashiuri01/items/85151311897d6afd429c)
[コストとサポート](https://qiita.com/yashiuri01/items/bac23130a43d62677330)
[移行とイノーベーション](https://qiita.com/yashiuri01/items/6e327034a7c50d56ca88)
[AWS用語集](https://qiita.com/yashiuri01/items/bd36c99623ca596b76e4)


## ストレージ
### **ブロックストレージ、オブジェクトストレージ、ファイルストレージ**

|  | ブロックストレージ | オブジェクトストレージ | ファイルストレージ |
| --- | --- | --- | --- |
| 一貫性 | 強い整合性 | 強い整合性 | 結果整合性 |
| 構造化 | ボリューム・ブロック | フラット構造 | 階層構造 |
| メタデータの付与 | 無し | 多様 | 限定的 |
| 制御構造と処理速度 | 緻密で効率的な制御により高速 | インデックスにより高速 | 階層構造により一定容量まで高速 |
| プロトコル | iSCSI/FCoE | HTTP(S) | CIFS/NFS |
| 適合データ | 容量：小～中規模<br>更新頻度：高 | 容量：中～大規模<br>更新頻度：低 | 容量：小～中規模<br>更新頻度：高 |

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/287165/dae8c11c-3444-8cd2-49ac-9eac82fe07db.png)


参照
https://www.softbank.jp/biz/blog/business/articles/202007/storage-difference/

### **インスタンスストア**

- EC2 インスタンスのブロックレベルの一時ストレージ
- インスタンスが削除されると、インスタンスストアのデータは失われる
- ユースケース
    - 長期的には必要のない一時的なデータを処理する

### **Amazon EBS (Elastic Block Store)**

- ブロックストレージ
- EC2インスタンスで使用可能なブロックレベルのストレージボリューム
- EC2インスタンスが停止または削除されても、アタッチされた EBS ボリュームのすべてのデータは使用できる
- 自動でスケーリングされない
- 使用方法
    1. EBS ボリュームを作成
    2. 構成 (ボリュームサイズやタイプなど) の定義
    3. プロビジョニング
    4. 同じAZのEC2インスタンスにアタッチ
- ユースケース
    - 保存する必要があるデータを保存
    - EBSスナップショットで増分バックアップを作成(自動バックアップ有効化機能はない)
    - Amazon EC2 インスタンスを削除しても EBS ボリュームの削除を回避するには、DeleteOnTermination 属性を False に設定することで実現できる。
    - DeleteOnTermination 属性をfalse に設定することにより、インスタンスを削除してもルートボリュームを保持することができる。
    
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/287165/97331c4e-0820-015f-f0ed-16f226299aa6.png)


### **Amazon S3 (Simple Storage Service)**

- オブジェクトストレージ
- 無制限の量を保存でき、ユーザの設定なしにスケーリングが自動で実施される
- データをオブジェクトとしてバケットにオブジェクトを保存
- 1オブジェクト最大5TBまで
- オブジェクトはバージョン管理される
- バケット名は、全てのリージョンで一意でなければなりません。また、バケット名の長さは、3〜63 文字である必要がある
- オブジェクトはオブジェクトデータとメタデータで構成
    - オブジェクトデータ
    - メタデータ - オブジェクトを表現する名前と値のペアのセット
- S3 バージョニング - オブジェクトが削除される際にMFA認証を求める設定
- ライフサイクルポリシー - 任意の期間で任意の階層間でデータを自動的に移動できる
- ストレージクラス
    - S3標準
        - 99.999999999%の耐久性
        - 静的ウェブサイトのホスティング
    - S3標準 - 低頻度アクセス (S3標準 -IA)
        - バックアップファイル
        - 長期保存ファイル
    - S3 Glacier
        - アーカイブできる
        - 監査データ等数年間は保存するものに適している
        - WORM(Write Once Read Meny)

| ストレージクラス | Standard | Standard-IA | Intelligent-Tiering | One Zone-IA | Glacier | Glacier Deep Archive |
| --- | --- | --- | --- | --- | --- | --- |
| 可用性 | 99.99% | 99.9% | 99.9% | 99.5% | 99.99% | 99.99% |
| 保存されるAZ | 3AZ以上 | 3AZ以上 | 3AZ以上 | 1AZ | 3AZ以上 | 3AZ以上 |
| データ取り出し費用 | なし | なし | あり | あり | あり | あり |
| モニタリング費用 | なし | なし | あり | なし | なし | なし |
| オートメーション費用 | なし | なし | あり | なし | なし | なし |
| 推奨データ | 頻繁にアクセスされるデータ | アクセス頻度は低いものの、必要なときにすぐに使用できる高可用性が求められるデータ | アクセスパターンが変化、または不明な存続期間が長いデータ | 高可用性を必要としないアクセス頻度の低いデータ | データのアーカイブに最適な低コストのストレージクラス<br>取得時間が数分から数時間許容される長期アーカイブデータ | 取得時間が12時間許容される長期アーカイブデータ |
| ユースケース | ウェブサイト<br>コンテンツ配信<br>データ分析 | アクセス頻度の低いデータ | アクセスパターンがモニタリング<br>30 日間連続してアクセスがないオブジェクトはStandard - IAに移動 | コストを節約する必要がある<br>AZに障害が発生した場合データを簡単に復元できる | アーカイブされた顧客レコード<br>古い写真や動画ファイル |  |

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/287165/d0341cd4-9eca-91c0-0099-2575172d24c9.png)


### Amazon Athena

S3内のデータを標準SQLを使用して分析

### **Amazon EFS (Elastic File System)**

- ファイルストレージ
- 複数のインスタンスによる読み取りと書き込みを同時に実行
- 特定のVPCを指定してファイルシステムを作成
- 複数のAZにデータを保存
- Linuxファイルシステム
- 自動的にスケーリング

### **EBS / S3 / EFS の比較**
| - | EBS | S3 | EFS |
| --- | --- | --- | --- |
| ストレージ種類 | ブロック | オブジェクト | ファイル |
| 保存されるAZ数 | 1AZ | 複数(プランのによっては1AZ) | 複数 |
| アクセス | 単一のEC2 | HTTPS | CIFS/NFSで複数のEC2 |
| ストレージサイズ | 最大16TB | 制限なし | 制限なし |
| I/O Throughput | HDD or SSDを選べることによって提供のIOが異なる | Single Object Uploadなら一つのファイルサイズは5GBまで | Default 3GB |
| スピード | 一番早い | 一番遅い | 普通 |
| 料金 | 普通 | 一番安い | 一番高い |