導入
コンピュートやストレージのコストは意識しやすい一方、見落とされがちなのがデータ転送料金です。SAAでは「転送コストを下げる設計」がしばしば問われます。
説明
AWSのデータ転送は、経路によって課金の有無が大きく変わります。
| 転送経路 | 料金の目安 |
|---|---|
| 同一AZ内(同じサブネット等) | 無料 |
| 同一リージョン内・AZを跨ぐ(例: AZ-a ⇔ AZ-b) | 課金あり(送受信双方) |
| AWSへのインバウンド(インターネットから流入) | 無料 |
| AWSからのアウトバウンド(インターネットへ流出) | 課金あり(データ量に応じて最も高くつきやすい) |
| 同一リージョンでVPCエンドポイント経由(S3・DynamoDB等) | インターネットを経由せず、転送料を抑えられる |
flowchart TD
subgraph AZ-a
E1["EC2"]
end
subgraph AZ-b
E2["EC2"]
end
Internet(("インターネット"))
E1 -- "同一AZ内: 無料" --> E1
E1 -- "AZ跨ぎ: 課金" --> E2
E2 -- "アウトバウンド: 課金(高コスト)" --> Internet
転送コストを下げる設計の定石は次の3つです。
- 同一AZ・同一リージョンに構成をまとめる:頻繁に通信するリソースは近くに置く
- VPCエンドポイントを使う:S3・DynamoDBなどへのアクセスをインターネット経由にせず、AWS内部ネットワークで完結させる(第2章参照)
- CloudFrontでキャッシュする:オリジンへのアウトバウンド転送そのものを減らし、エッジからの配信で賄う(CloudFrontからインターネットへの転送はEC2直配信より有利な料金体系)
具体例
ある画像共有サービスが、請求を見て驚きました。コンピュートでもストレージでもなく、データ転送料が最大の費目だったのです。見落としがちなコストを、経路ごとに退治します。
- EC2から画像を直接インターネット配信していた(アウトバウンドが高い) → CloudFrontを前段に置き、エッジのキャッシュから配信。オリジンからのアウトバウンドが激減し、CloudFrontの有利な料金体系も効く。
- プライベートのEC2が、ログをS3へNATゲートウェイ経由で送っていた → S3向けVPCエンドポイント(Gateway型・無料)に切り替え、インターネットを経由しないAWS内部経路へ。NATのデータ処理料が消える。
- 頻繁に通信するアプリとキャッシュが別AZに分かれていた(AZ跨ぎは課金) → 同一AZにまとめ、AZ間転送料を削減。
「データ転送コストを削減したい」と来たら、まずインターネットへのアウトバウンドが発生していないかを疑う。答えの多くはCloudFront・VPCエンドポイント・同一リージョン/AZへの集約のどれかです。
読んでみよう
「データ転送コストを削減したい」という問題文を見たら、まず「インターネットへのアウトバウンドが発生していないか」を疑ってください。答えの多くは、VPCエンドポイント・CloudFront・同一リージョンへの集約のどれかです。