【おぶじぇくとすとれーじ】

オブジェクトストレージ とは?

最終更新:
💡 名札(キー)を付けた荷物を、棚番号なしで預かる巨大な倉庫

データを、本体とメタデータをまとめた「オブジェクト」として保存し、キー(名前)で読み書きするストレージ。HTTPのAPIで扱い、画像・動画・バックアップなど大量のデータの保存に使われる。

📌 このページのポイント
オブジェクトストレージ vs ファイルシステム オブジェクトストレージ バケット Key: images/photo.png Key: docs/report.pdf Key: backup/db.sql 各オブジェクト = データ + メタデータ フラットな名前空間(キーで識別) ファイルシステム / images/ docs/ photo.png report.pdf ディレクトリ階層構造 ツリー型の名前空間 vs ※左はAmazon S3の汎用バケットの例(キーの「/」はフォルダではなく名前の一部)
オブジェクトストレージの構造
ひよこ ひよこ
オブジェクトストレージって普通のファイルサーバーと何が違うの?
ペンギン先生 ペンギン先生
ファイルサーバーはフォルダの階層でファイルを管理するよね。Amazon S3の通常のバケットは、フラットな空間に「キー」で名前を付けてオブジェクトを置くんだ。「photos/2024/cat.jpg」もフォルダの中のファイルではなく、そういうキー名のオブジェクトが1つあるだけだよ。画面上のフォルダは、キーの先頭部分(プレフィックス)で見やすく区切った表示なんだ
ひよこ ひよこ
どんなものを保存するのに向いてるの?
ペンギン先生 ペンギン先生
画像・動画・ログ・バックアップ・データ分析用のファイルなどが定番だよ。S3は保存できる総量を事前に決めなくてよく、使った分だけの課金になる。ただ、保存量だけでなくリクエスト数やデータ転送にも料金がかかるから、使い方に合わせて見積もろうね
ひよこ ひよこ
S3に置いたファイルって誰でも見れちゃうの?
ペンギン先生 ペンギン先生
いいえ、S3のバケットとオブジェクトは既定で非公開だよ。新しいバケットではパブリックアクセスのブロックも有効で、ACLも無効になっている。他の人に一時的に渡したいときは、有効期限付きの「署名付きURL」を作れるんだ
ひよこ ひよこ
バージョニングを有効にしたら、削除しても復元できるって本当?
ペンギン先生 ペンギン先生
バージョンIDを指定しない普通の削除なら、データは消えずに「削除マーカー」が最新バージョンとして追加されるんだ。だから一覧からは消えたように見えても、削除マーカーを消せば前のバージョンが戻るよ。ただし、バージョンIDを指定して削除すると、そのバージョンは本当に消えるんだ
ひよこ ひよこ
古いバージョンが増え続けたら困らない?
ペンギン先生 ペンギン先生
困るね。S3では古いバージョンも1つずつ丸ごと保存されて、それぞれに料金がかかるよ。だから、ライフサイクルルールで古いバージョンを一定期間後に削除するなど、残す期間を決めておくといいんだ
もっと詳しく知りたい人へ

オブジェクトストレージには、本当にフォルダがないのですか?

Amazon S3の汎用バケットはフラットな構造で、「photos/」のようなプレフィックスを区切り文字で分けて、フォルダのように一覧表示しています。ただしS3でもディレクトリバケット(S3 Express One Zoneなどで使う種類)はオブジェクトを階層的なディレクトリで管理するなど、サービスやバケットの種類によって違いがあります。使うサービスの説明で確認してください。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「オブジェクトストレージ」って出てきたら「キーを付けたデータをHTTPのAPIで出し入れする、大容量向けの倉庫」と思えればだいたいOK!
📖 おまけ:英語の意味
「Object Storage」 = オブジェクト(データのかたまり)をしまうストレージ
💬 ファイルシステムの「フォルダ階層」ではなく、オブジェクト単位でデータを管理することから来た呼び名だよ

参考資料

← 用語集にもどる