基本情報
| 項目 | 内容 |
|---|---|
| 英語名 | Amazon S3 |
| 正式名称 | Amazon Simple Storage Service |
| 中国語の説明 | 对象存储 |
| 日本語の説明 | オブジェクトストレージ |
| 出題頻度 | ⭐⭐⭐⭐⭐ |
| 混同しやすいもの | EBS / EFS / S3 on Outposts |
一言で理解
S3 は AWS のオブジェクトストレージです。Bucket が管理境界、Object がデータとメタデータ、Key が Bucket 内の一意な識別子になります。
主な役割
- 1 オブジェクトは最大 5 TB。5 GB を超えるアップロードでは Multipart Upload が必須。
- 既定では非公開。IAM、Bucket Policy、Block Public Access、Presigned URL、暗号化でアクセスを制御する。
- Versioning は履歴保護、Lifecycle は移行と期限管理、Replication と Object Lock は追加保護を担う。
試験ポイント
- オブジェクト、静的資産、ログ、バックアップ、Data Lake には S3 を検討する。
- アクセス頻度、復元時間、総コストから Standard、IA、Glacier、Intelligent-Tiering を選ぶ。
- CloudFront と非公開 S3 Origin は代表的な安全配信構成。
よくある誤解
- Key のスラッシュは Prefix の見え方にすぎず、S3 は POSIX ファイルシステムではない。
- Versioning の旧バージョンにも料金が発生し、無料バックアップではない。
重要ポイント
Bucket に Object、Key で特定。Policy で権限、Versioning で履歴、Lifecycle でコストを管理。
関連サービス
CloudFront、IAM、KMS、CloudTrail、AWS Backup。
追加:保護、配信、Batch 処理
- Versioning、Replication、Object Lock、Legal Hold、MFA Delete は異なる失敗経路を保護し、Replication は Backup の代替ではありません。
- Private S3 Origin は CloudFront の OAC + Bucket Policy で配信します。S3 Website Endpoint は OAC 非対応で、標準は HTTP のみです。
- S3 Event Notifications は SNS、SQS Standard、Lambda へ直接送れます。複雑な Filter、Replay、FIFO は EventBridge を使います。
- Batch Operations は大量の Existing Object、Batch Replication は過去・失敗 Object の補完に使います。
- SSE-KMS は S3 と KMS 両方の権限が必要で、S3 Bucket Key は KMS Request と Cost を削減できます。
追加:Event、Encryption、Data Protection
- Event Notification は SNS、SQS、Lambda、EventBridge へ送れる。重複や順序を考慮し Consumer を Idempotent にする。
- SSE-S3、SSE-KMS、DSSE-KMS、SSE-C では Key の責任が異なり、KMS では Key Policy と API 権限も必要。
- Versioning、Object Lock、Replication、Lifecycle は復元、改変防止、複製、階層化/削除という別の目的を持つ。