オブジェクトストレージの仕組み ― S3はなぜ「無限に」データを保存できるのか
オブジェクトストレージってよく聞くけど、普通のストレージと何が違うの?
そう!オブジェクトストレージにはフォルダという概念がなくて、すべてのデータは『バケット』と『キー』で管理されるんだ。例えば S3 なら、バケット名が my-bucket でキーが photos/2026/cat.jpg みたいになる。スラッシュはただの文字列の一部で、本当のディレクトリ階層じゃないよ。
えっ、じゃあフォルダに見えてるのは見た目だけなの?
その通り。S3コンソールでフォルダっぽく見えるのはキーのプレフィックスで擬似的に表示してるだけなんだ。この設計のおかげで、ファイル数が何兆個になっても検索速度が落ちない。ファイルストレージだとディレクトリのネストが深くなると遅くなるけど、オブジェクトストレージはキーでダイレクトにアクセスできるよ。
S3って『イレブンナイン』の耐久性があるって聞いたけど、99.999999999%ってどういうこと?
すごい!でも全部同じ場所に保存したらお金かかりそう…。
そこで活躍するのがストレージクラスだよ。S3だとStandard(頻繁にアクセス)、Intelligent-Tiering(自動で最適化)、Standard-IA(低頻度アクセス)、Glacier(アーカイブ)などがある。例えばログファイルは30日経ったらIAに移し、90日経ったらGlacierに移すライフサイクルポリシーを設定すれば、コストを大幅に削減できるんだ。
賢い!外部の人にファイルを共有したいときはどうするの?
AWSのS3以外にもオブジェクトストレージってあるの?
オブジェクトストレージって何でも保存できるなら、データベースの代わりにもなるの?