本文へスキップ
BecomeCoder

AWS SAA(ソリューションアーキテクト)コース · 第10章 コスト最適化・移行・試験対策 · レッスン56

データ転送コストの設計

導入

コンピュートやストレージのコストは意識しやすい一方、見落とされがちなのがデータ転送料金です。SAAでは「転送コストを下げる設計」がしばしば問われます。

説明

AWSのデータ転送は、経路によって課金の有無が大きく変わります。

転送経路料金の目安
同一AZ内(同じサブネット等)無料
同一リージョン内・AZを跨ぐ(例: AZ-a ⇔ AZ-b)課金あり(送受信双方)
AWSへのインバウンド(インターネットから流入)無料
AWSからのアウトバウンド(インターネットへ流出)課金あり(データ量に応じて最も高くつきやすい)
同一リージョンでVPCエンドポイント経由(S3DynamoDB等)インターネットを経由せず、転送料を抑えられる
flowchart TD
    subgraph AZ-a
      E1["EC2"]
    end
    subgraph AZ-b
      E2["EC2"]
    end
    Internet(("インターネット"))
    E1 -- "同一AZ内: 無料" --> E1
    E1 -- "AZ跨ぎ: 課金" --> E2
    E2 -- "アウトバウンド: 課金(高コスト)" --> Internet

転送コストを下げる設計の定石は次の3つです。

  1. 同一AZ・同一リージョンに構成をまとめる:頻繁に通信するリソースは近くに置く
  2. VPCエンドポイントを使う:S3・DynamoDBなどへのアクセスをインターネット経由にせず、AWS内部ネットワークで完結させる(第2章参照)
  3. CloudFrontキャッシュする:オリジンへのアウトバウンド転送そのものを減らし、エッジからの配信で賄う(CloudFrontからインターネットへの転送はEC2直配信より有利な料金体系)

読んでみよう

「データ転送コストを削減したい」という問題文を見たら、まず「インターネットへのアウトバウンドが発生していないか」を疑ってください。答えの多くは、VPCエンドポイント・CloudFront・同一リージョンへの集約のどれかです。