ストレージの種類
ストレージとは
ストレージは、データを永続的に保存する装置・仕組みの総称です。物理的には HDD(磁気ディスク。安価で大容量)と SSD(半導体メモリ。高速)が主役ですが、インフラ設計では「どの方式で保存するか」の理解がより重要になります。
方式は大きくブロックストレージ・ファイルストレージ・オブジェクトストレージの3つに分かれます。
3つのストレージ方式
| 方式 | データの扱い方 | 接続イメージ | 代表例 |
|---|---|---|---|
| ブロックストレージ | 固定サイズのブロックの集まり | サーバーに直結する「ディスク」 | EBS、SAN |
| ファイルストレージ | フォルダ階層のファイル | ネットワーク越しの「共有フォルダ」 | NFS、EFS、NAS |
| オブジェクトストレージ | ID(キー)付きのオブジェクト | HTTP API で出し入れする「置き場」 | S3、Cloud Storage |
- ブロックストレージはサーバーの OS からディスクとして見え、データベースの保存先など高速性が求められる用途に向きます
- ファイルストレージは複数サーバーから同じフォルダを共有したいときに使います
- オブジェクトストレージは画像・動画・バックアップなどを大量に安く保存でき、容量がほぼ無制限。Web 経由でアクセスできるためクラウド時代の主役です
[[AWS]] なら EBS・EFS・S3 がそれぞれに対応します。「データベースは EBS、共有データは EFS、画像とバックアップは S3」のように使い分けるのが典型です。
選び方の考え方
- 速度が命(データベース、OS 領域)→ ブロックストレージ+SSD
- 複数台で共有(共通の設定ファイル、アップロード先の共有)→ ファイルストレージ
- 大量・安価・長期保存(ログ、画像、[[バックアップとリカバリ]] のデータ)→ オブジェクトストレージ
またオブジェクトストレージには、アクセス頻度が低いデータをより安い保存クラス(アーカイブ層)へ移す仕組みがあり、コスト最適化の定番手段です。
初学者向けポイント
- 「S3 はディスクではない」— OS にマウントする前提の仕組みではなく、API でファイルを出し入れする置き場と捉える
- 物理ディスクの故障に備える冗長化技術が [[RAIDとディスク冗長化]]。クラウドのストレージは内部で同様の冗長化が行われている
- HDD と SSD の違い(速度と価格)はオンプレでもクラウドでも選択の基本軸
- 迷ったら「そのデータは誰が・どこから・どれくらいの頻度で使うか」を書き出すと方式が絞れる
関連技術とのつながり
- [[AWS]] — EBS・EFS・S3 が3方式にそれぞれ対応する
- [[RAIDとディスク冗長化]] — 物理ディスク層の故障対策
- [[バックアップとリカバリ]] — バックアップ先はオブジェクトストレージが定番
- [[クラウドコンピューティング]] — ストレージをサービスとして借りる時代の前提知識
Q: オブジェクトストレージの特徴として正しいのはどれ?
- [x] HTTP API でデータを出し入れし、容量がほぼ無制限
- [ ] サーバーの OS からディスクとして直接見える
- [ ] フォルダ階層で複数サーバーから共有フォルダとして使う
解説: オブジェクトストレージは API 経由で出し入れする方式で、画像やバックアップの大量・安価な保存に向きます。
Q: データベースの保存先など高速性が求められる用途に向く方式はどれ?
- [ ] オブジェクトストレージ
- [x] ブロックストレージ
- [ ] ファイルストレージ
解説: ブロックストレージは OS からディスクとして見え高速なため、データベースなどの用途に向きます。
Q: AWS のサービスと方式の対応として正しいのはどれ?
- [ ] S3 がブロックストレージ、EBS がオブジェクトストレージ
- [x] EBS がブロックストレージ、S3 がオブジェクトストレージ
- [ ] EFS がオブジェクトストレージ、S3 がファイルストレージ
解説: EBS はブロック、EFS はファイル、S3 はオブジェクトストレージにそれぞれ対応します。