S3 — オブジェクトストレージ
Amazon S3(Simple Storage Service) は容量無制限のオブジェクトストレージです。 ファイルを「バケット」に「オブジェクト」として保存し、HTTP(S) 経由でアクセスします。 耐久性 99.999999999%(イレブンナイン)を誇り、AWS で最も利用頻度の高いストレージサービスです。
💡 S3 のセキュリティ設定
デフォルトでは「パブリックアクセスブロック」が有効になっており、バケット全体が非公開です。静的ウェブサイトとして公開する場合は意図的にブロック解除が必要です。意図しない公開によるデータ漏洩事故が業界で多発しているため、設定の意味を理解して変更してください。
EBS — ブロックストレージ
Amazon EBS(Elastic Block Store) は EC2 インスタンスにアタッチして使用するブロックストレージです。 OS のルートボリュームや、高 IOPS を必要とするデータベースのデータ領域として使われます。 1つの EBS ボリュームは基本的に1つの EC2 インスタンスにのみアタッチできます(EBS Multi-Attach は例外)。
| ボリュームタイプ | 用途 | 最大 IOPS | 特徴 |
|---|---|---|---|
| gp3(汎用 SSD) | 一般的なワークロード、OS ディスク | 16,000 | gp2 より性能/コスト効率が高い。新規では gp3 推奨 |
| io2 Block Express | ミッションクリティカルな DB | 256,000 | 高 IOPS・高スループットが必要な場合。コスト高 |
| st1(スループット最適化 HDD) | ログ・大容量シーケンシャル処理 | 500 | IOPS は低いがスループットが高く安価 |
| sc1(コールド HDD) | アクセス頻度の低いアーカイブデータ | 250 | 最もコストが低い HDD タイプ |
EFS — ファイルストレージ
Amazon EFS(Elastic File System) は複数の EC2 インスタンスや ECS タスクから同時にマウントできる フルマネージドの NFS ファイルシステムです。 アプリケーションがファイルシステムとして共有ストレージを必要とする場合に使用します。
Glacier — アーカイブストレージ
Amazon S3 Glacier は S3 のストレージクラスの一つで、長期保存・アーカイブ用途に特化した低コストストレージです。 取り出し時間(分単位〜時間単位)と引き換えに、Standard より大幅にコストを削減できます。 監査ログや法的保管義務のあるデータの長期保管に適しています。
比較表
| 比較項目 | S3 | EBS | EFS |
|---|---|---|---|
| ストレージ形態 | オブジェクト | ブロック | ファイル(NFS) |
| アクセス方法 | HTTP(S) API / SDK | マウント(EC2 専用) | マウント(複数インスタンス可) |
| 同時アクセス | 無制限 | 基本1インスタンス | 複数インスタンス同時可 |
| 容量 | 無制限(自動) | 最大64TB(要プロビジョニング) | 無制限(自動) |
| レイテンシー | 中(HTTP往復あり) | 低(ローカルディスク相当) | 中(NFS オーバーヘッドあり) |
| 代表的な用途 | 静的コンテンツ・ログ・バックアップ・データレイク | OS ディスク・DB データ領域 | CMS の共有コンテンツ・コンテナの共有ボリューム |
選択フロー
🔀 Step 1 — ファイルシステムとして複数サーバーから同時にマウントしたいか?
Yes → EFS。NFSマウントで複数の EC2/ECS から共有アクセスできる。No → 次へ。
🔀 Step 2 — EC2 の OS ボリュームか、高 IOPS が必要な DB ストレージか?
Yes → EBS。OS ルートボリュームや MySQL/PostgreSQL のデータ領域は EBS 一択。No → 次へ。
🔀 Step 3 — ファイルを HTTP でアクセスしたい、または大量データを低コストで保管したいか?
Yes → S3。静的コンテンツ配信・バックアップ・データレイクのほとんどのケースで S3 が最適解です。
✅ 迷ったら S3 から始める
S3 はほぼあらゆるユースケースで「まず検討すべきストレージ」です。EC2 の一時ストレージや DB データ領域といった特殊な要件がある場合に EBS、複数インスタンスからの共有ファイルアクセスが必要な場合に EFS を選びます。