S3 vs EBS vs EFS
― 全部「保存できる」けど、全然違う ―
AWSを学び始めると最初の疑問。「S3もEBSもEFSも“保存できる”って書いてあるけど、何が違うの?」
筆者も勉強中にこの壁にぶつかり、理解に時間がかかりました…
結論、この3つは保存の目的と使い方が異なります。この記事では、どんなときにどれを使うべきかを、整理してみました!
一言でイメージするなら
- S3 → クラウド上の金庫付きファイル置き場(Google Driveみたいなもの)
- EBS → EC2(サーバー)に内蔵されたSSDやHDD
- EFS → みんなで使う社内共有フォルダ
Amazon S3(Simple Storage Service)
ファイルを“オブジェクト”として保存するサービス。
- フォルダのように見えるが、実際は「オブジェクト(データ+メタ情報)」
- インターネット経由でアクセス可能(URL共有もできる)
- データは自動で複数AZに分散保存され、高耐久性(99.999999999%)
- 静的Webホスティング、バックアップ、ログ保存などに最適
よくある使い方
- 画像や動画ファイルの保存
- バックアップやログ保存
- 静的Webサイトのホスティング
注意点
- EC2のディスク代わりには使えない
- 頻繁な書き込み処理(DB用途)には不向き
例えるなら:Google DriveやDropboxのような「置くだけクラウド金庫」
Amazon EBS(Elastic Block Store)
EC2専用のブロック型ストレージ。
- EC2インスタンスに接続して使うディスク(内蔵ストレージ)
- 1つのEBSは基本的に1台のEC2専用(共有はできない)
- スナップショットでS3にバックアップ可能
- SSD(高速)やHDD(低コスト)タイプを選べる
よくある使い方
- OSやアプリのインストール先
- データベースのデータファイル保存
- 高速I/Oが必要な業務処理
注意点
- EC2が削除されると切り離される(設定で永続化も可能)
- 単体では使えない(EC2が必要)
例えるなら:ノートPCに内蔵されたSSDのような存在
Amazon EFS(Elastic File System)
複数のEC2インスタンスから同時にアクセスできる共有ストレージ。
- NFS(Network File System)ベースのファイル共有サービス
- 複数のEC2から同時にマウント可能(同じファイルを共有)
- データは自動で複数AZに分散保存され、高可用性
- 容量制限なし(自動でスケール)
よくある使い方
- Webサーバー群でファイルを共有(例:WordPressの画像など)
- 複数アプリサーバーで設定ファイルを共用
- ECS/EKS(コンテナ)間での共有ディレクトリ
注意点
- NFS経由のため遅延がやや大きい
- ファイル数が多すぎるとコストが上がる
例えるなら:会社の「共有フォルダ」やNASストレージ
図で理解する立ち位置(イメージ)
- S3 → クラウド上に独立して保存(どのEC2からもアクセス可能)
- EBS → EC2専用のディスク(1台に接続)
- EFS → 複数のEC2間で共有できるファイルシステム
選び方まとめ
- ファイル・画像・ログなどを保存したい → S3
- OSやDBデータなど、EC2専用ディスクにしたい → EBS
- 複数EC2で同じファイルを共有したい → EFS
試験(CLF)でもよく出るポイント
- 「複数のEC2でファイルを共有したい」→ EFS
- 「バックアップや静的Webサイトをホストしたい」→ S3
- 「EC2のOSディスクとして使いたい」→ EBS
まとめ
S3・EBS・EFSはどれも保存ができるけれど、「どの層で、どんな目的で使うか」が異なります。
- アプリ間共有なら → EFS
- サーバー内蔵ディスクなら → EBS
- クラウド上の金庫保存なら → S3