🙆
Lesson9. クラウドのストレージの種類
学ぶ前の知識レベル
- ストレージがデータをためる場所だということはわかっているレベル
- NAS とか SAN とか基本・応用情報のときにやったけど記憶は薄れており、実務では(実装する側としては)触ったことがない
学んだこと
クラウド上のストレージの種類は3種類ある。
1. ファイルストレージ
- Windows の Explorer みたいなやつ
- ファイルをツリー構造で持つ
- 向いているユースケース
- サイズの大きいコンテンツ・レポジトリ
- 開発環境
- ユーザーのホームディレクトリ
2. ブロックストレージ
- データを一定サイズのかたまり(ブロック)に分けて保持する
- 更新の際は、更新したい部分のブロックだけを更新すればよい
- なので更新が早い
- トランザクションの多いデータ向き
- オンプレのストレージでいう、DAS(Direct Attached Storaget - サーバーに直接ストレージを接続する)やNAS(Network Area Storage - 同じネットワーク内にストレージを接続する)に対応
- AWSのサービスでは、EBSがこのタイプに該当(Elastic Block Storage)
- EBSは基本的にはEC2とくっつけて使うためのストレージ
- つまり、AWS Lambdaなどとくっつけては使えない
- 1つのEC2に対して複数のEBSをくっつけることができる
- 逆(1つのEBSを複数のEC2にくっつける)は昔はできなかったが、最近は部分的にできるようになったらしい
- EBSは基本的にはEC2とくっつけて使うためのストレージ
3. オブジェクトストレージ
- ひとつのデータ(ファイル)をひとつのオブジェクトとして保持する
- 更新の際は、オブジェクト全体を読みだして更新しようとする
- なので、トランザクションが頻繁なデータには向かない
- 更新頻度が低く、サイズの大きい非構造データ(写真、メディアファイルなど)に向いている
- データレイクに使われるのもこのタイプ
- オンプレのストレージでいう、SAN(Storage Area Network - ストレージ専用のネットワークを別に構築)に対応
- AWSのサービスでは、S3がこのタイプに該当(Simple Storage Service)
- S3はバケットの中にフォルダを作ることが可能だが、内部的な管理でいうと全ファイルをフラットに管理している(フォルダ構造のとおりにファイルが管理されているわけではない)
※ 更新頻度の低いデータのことを、WORM - Write Once, Read Many と呼ぶそうです
学ぶために使ったリソース
メインリソース
AWS Skill Builder - AWS Technical Essentials の Storage の章
以下のドキュメントも。
日本語の記事
まだわかっていないこと
ひとまず今は概念の整理だけ。
ブロックストレージの中から更新したいデータのありかを見つける方法などはまだ全然わかっていないし、それぞれのストレージタイプが AWS その他のクラウドストレージとどう紐づくのかもよくわかっていない。(←後半部分はちょっとわかった 2022/12/13)
Discussion