ストレージ ・
S3 イベント通知とは?Lambda / SQS / SNS 連携パターン
S3 イベント通知は オブジェクト操作をトリガーに他サービスを起動する仕組み。`PutObject` で Lambda 起動、`DeleteObject` で監査ログ送信、など、サーバーレス連携の基本機能。EventBridge 統合により高度なフィルタリング・ルーティング...
S3 オブジェクト操作(PUT/DELETE 等)を Lambda / SQS / SNS / EventBridge に通知する機能。
1. 概要(端的に)
S3 イベント通知は オブジェクト操作をトリガーに他サービスを起動する仕組み。PutObject で Lambda 起動、DeleteObject で監査ログ送信、など、サーバーレス連携の基本機能。EventBridge 統合により高度なフィルタリング・ルーティングも可能。
2. 何ができるか
- Lambda 起動:画像アップロード時の自動リサイズ等
- SQS 通知:非同期処理キュー投入
- SNS 通知:複数購読者への配信
- EventBridge 配信:高度なルーティング
- イベントタイプフィルタ:PUT のみ・DELETE のみ等
- プレフィックス・サフィックス フィルタ:
uploads/*.jpgのみ等
主なイベントタイプ
s3:ObjectCreated:*(PUT / POST / COPY / マルチパート完了)s3:ObjectRemoved:*(DELETE / 削除マーカー追加)s3:ObjectRestore:*(Glacier 復元)s3:Replication:*(レプリケーション)s3:ObjectTagging:*(タグ操作)s3:LifecycleExpiration:*(ライフサイクル削除)
3. 特徴
| 観点 | 特徴 |
|---|---|
| 追加料金 | S3 イベント通知自体は無料(受信先サービス料金のみ) |
| 配信先 | Lambda / SQS / SNS / EventBridge |
| フィルタ | イベントタイプ + プレフィックス + サフィックス |
| 保証 | 少なくとも 1 回(重複あり得る) |
| 配信遅延 | 通常数秒以内 |
| EventBridge 統合 | より柔軟なフィルタ・ルーティング |
Lambda / SQS / SNS / EventBridge の使い分け
| 配信先 | 用途 |
|---|---|
| Lambda | リアルタイムで関数実行(画像処理等) |
| SQS | 大量イベントを非同期キュー処理 |
| SNS | 複数サブスクライバーへ Fan-out |
| EventBridge | 高度なルーティング・他 AWS アカウント連携 |
4. 仕組み
S3 はオブジェクト操作を検知すると、設定された通知先に非同期でイベントを送信する。
動作の流れ
- バケットでイベント通知設定(マネコン or API)
- クライアントが
PutObject等を実行 - S3 がイベントを生成(JSON フォーマット)
- 設定された宛先(Lambda 等)へ配信
- 受信先サービスが処理実行
イベント JSON 例
{
"Records": [{
"eventVersion": "2.1",
"eventSource": "aws:s3",
"awsRegion": "ap-northeast-1",
"eventTime": "2026-05-06T12:00:00.000Z",
"eventName": "ObjectCreated:Put",
"s3": {
"bucket": {"name": "my-bucket"},
"object": {"key": "uploads/image.jpg", "size": 1024}
}
}]
}
注意点
- 同一イベントタイプ・同一プレフィックスの宛先は 1 つだけ(複数宛先は EventBridge 経由)
- 少なくとも 1 回配信:重複処理対策が必要
- 順序保証なし:順序依存の処理は要注意
5. ユースケース
ユースケース 1:画像アップロード → リサイズ
S3 PUT → Lambda → リサイズ → 別バケット保存。
ユースケース 2:CSV アップロード → DB 投入
S3 PUT → Lambda → バリデーション → DynamoDB / RDS 書き込み。
ユースケース 3:監査ログ
全削除イベントを SNS → Slack / Email 通知。
ユースケース 4:動画変換
動画アップロード → Lambda → MediaConvert ジョブ起動 → 別バケットに変換結果。
ユースケース 5:ETL パイプライン
ログ ファイル PUT → SQS → 処理ワーカー(複数並列)。
6. 関連用語
- S3 — イベントの発生源
- Lambda — 主要な配信先
- SQS / SNS — メッセージング統合
- EventBridge — 高度なイベント連携
7. 関連サイト
AWS 公式
参考
🎓 試験での出題傾向
| 試験 | 重要度 | 主な出題パターン |
|---|---|---|
| CLF | 低 | サーバーレス連携の概念 |
| SAA | 中 | イベント駆動アーキテクチャ設計 |
| DVA | 高 | Lambda トリガー設定、API |
| SOA | 中 | イベント運用・モニタリング |