ブロック・ファイル・オブジェクトストレージ — 升目と本棚と直置き倉庫
クラウドでデータを置く場所を選ぶと、ブロック・ファイル・オブジェクトという3種類のストレージが出てきます。どれも「データを保存する場所」ですが、ストレージ自身が何を知っているかがまったく違います。
たとえるなら、ブロックは番号だけ振られた升目、ファイルはフォルダで仕切られた本棚、オブジェクトは番号札をつけて床に直置きする巨大倉庫です。図1で、同じ写真 photos/2026/cat.jpg を3か所に置き、上から順に操作してみてください。
- 📁 /
- 📁 docs
- 📁 photos
- 📁 2025
- 📁 2026
- 📄 cat.jpg
| 🧱 ブロック | 📚 ファイル | 📦 オブジェクト | |
|---|---|---|---|
| 保存のしかた | — | — | — |
| 一部だけ直す | — | — | — |
| 3台から同時に | — | — | — |
| よく使う場面 | DBやOSのディスク | チームの共有フォルダ | 画像・動画・バックアップ |
ストレージは「何を知っているか」が違う
ブロックストレージが知っているのは「何番の升目に何が書いてあるか」だけです。そこに cat.jpg という名前の写真がある、ということは知りません。升目のどこが cat.jpg なのかは、つないだサーバーのOSが手帳(ファイルシステム)に書いて覚えています。パソコンに挿したハードディスクと同じ立場です。
ファイルストレージは、その手帳ごとストレージ側が持ちます。だからフォルダの階層や名前が分かり、ネットワーク越しに何台からでも「photos/2026/cat.jpg を開いて」と頼めます。
オブジェクトストレージにはフォルダがありません。photos/2026/cat.jpg は、スラッシュも含めて1つの長い番号札(キー)です。棚をたどらず札で直接取り出せるので、何十億個置いても探す手間が増えにくく、説明札(メタデータ)も自由につけられます。
途中だけ直せるか、どこからでも使えるか
「✏️ 写真の一部だけ直す」では差がはっきり出ます。ブロックとファイルは変わった升目(4KB)だけを書き換えられますが、オブジェクトは5MBまるごと置き直しです。少しずつ何度も書き換えるデータベースのディスクに、オブジェクトストレージは向きません。
反対に「🖥 3台のサーバーから使う」では、ブロックが苦手です。升目の手帳を持っているのはつないだ1台のOSだけなので、ほかのサーバーが同時に書き込むと手帳と中身が食い違い、データが壊れます。ファイルは共有フォルダとして数台から、オブジェクトはHTTPでブラウザからでも直接読めます。
- ブロックストレージ
- 決まった大きさの升目(ブロック)に番号をつけて読み書きするストレージ。サーバーにディスクとしてつなぐ。例: Amazon EBS。
- ファイルストレージ
- フォルダとファイル名で整理し、ネットワーク越しに共有できるストレージ。例: NAS、Amazon EFS。
- オブジェクトストレージ
- データを丸ごと1つの「オブジェクト」として、キーとメタデータをつけて置くストレージ。HTTPで出し入れする。例: Amazon S3。
- ファイルシステム
- どの升目に、どのファイルのどの部分が入っているかを管理する仕組み。OSの手帳。
- メタデータ
- データそのものではなく、データについての情報。種類、作成日、作成者など。
まとめ
3つの違いは「ストレージがどこまで知っているか」です。番号しか知らないブロックは速く細かく書けるが、1台専用。名前とフォルダを知るファイルはみんなで共有できる本棚。札だけで管理するオブジェクトは途中だけ直すのは苦手だが、どこからでも、いくらでも置ける倉庫です。置くデータの使われ方に合わせて選びます。