AWS SAA-C03 D3高性能アーキテクチャ|ElastiCache/DAX/CloudFront/Athena試験対策

1. はじめに — D3「高性能アーキテクチャ設計」とは

本記事は「AWS SAA-C03試験対策」シリーズの Vol3 です。
試験全体の概要とロードマップは Vol0 で、セキュア設計は Vol1、レジリエント設計は Vol2 でそれぞれ解説しています。

ここから扱うのは試験の第3ドメイン、D3「Design High-Performing Architectures(高性能アーキテクチャ設計)」 です。
公式試験ガイド v1.1 での出題比率は 24% で、65問換算なら約16問を占めます。
問題バンク400問の実測では 96問 がD3に分類されており、試験の合否に大きく影響するドメインです。

D3で最も問われるのは、「どのサービスの組み合わせでレイテンシを下げるか」 という判断です。
キャッシュ・CDN・DBレプリカ・並列処理といった手法を、要件に応じて正しく選ぶ能力が試されます。

この記事(Vol3)で得られること

  • D3で問われるサービスの全体像と出題傾向(§1〜§2)
  • S3の転送高速化・マルチパートアップロードの設計(§2)
  • CloudFront・Global Acceleratorによるコンテンツ配信最適化(§3)
  • ElastiCache・DAXによるキャッシュ層の構成(§4)
  • Aurora・DynamoDBの高性能スケーリング設計(§5)
  • EBS io2・EFS・FSx Lustreによるストレージ高性能化(§6)
  • Athena・Redshift・Kinesisによるデータ分析・処理(§7)

1-1. D3の出題傾向を把握する

D3 は大きく次の5テーマで整理できます。

#テーマ代表サービス
1ストレージ・転送の高速化S3 Transfer Acceleration / マルチパート
2コンテンツ配信・グローバル高速化CloudFront / Global Accelerator
3キャッシュ層によるDB負荷軽減ElastiCache / DAX
4データベースの高性能化Aurora / DynamoDB / RDS リードレプリカ
5データ分析・処理の最適化Athena / Redshift / Kinesis

問題バンク実測でのサービス登場回数は S3(127) が圧倒的1位で、以下 EC2(52)・RDS(49)・CloudFront(49)・DynamoDB(43)・Athena(36)・Redshift(34)・Lambda(25) と続きます。
S3 は全セクションに横断して登場するため、「S3の高性能設計オプション」を確実に押さえることが D3 攻略の第一歩です。

D3学習のコツ

  • 設問のシナリオからボトルネックの場所を特定することが最重要です。ネットワーク遅延なのかDB読み取り遅延なのかで選ぶサービスが変わります
  • 「キャッシュ」「CDN」「レプリカ」の3つの手法をそれぞれどこで使うか、使い分けを理解しましょう
  • D3は他ドメインと組み合わせた設問も多く、コスト最適化(D4)との複合問題(例: 「低コストで高性能を実現する方法は」)も頻出です

2. S3 高性能設計 — 転送高速化・マルチパート

2-1. S3 Transfer Acceleration

S3 Transfer Acceleration は、CloudFront のエッジロケーションを経由して S3 へのアップロード・ダウンロードを高速化するサービスです。
世界各地のユーザーがファイルをアップロードする際、最寄りのエッジロケーションにデータを送ると、そこから AWS のバックボーンネットワークを通じて S3 バケットへ高速転送されます。
標準の S3 エンドポイントではなく、<bucket>.s3-accelerate.amazonaws.com という専用エンドポイントを使います。

試験での判断ポイントは、「グローバルに分散したユーザーからの大容量アップロード」 という要件です。
この要件が出たら S3 Transfer Acceleration が最有力の選択肢になります。

2-2. マルチパートアップロード

マルチパートアップロード は、大きなファイルを複数のパートに分割して並列アップロードすることで、転送速度を向上させる機能です。
100MB以上のファイルには使用が推奨され、5GB以上のファイルには必須となります(単一オペレーションの5GB上限のため)。

個々のパートが独立しているため、一部が失敗しても該当パートのみ再送すればよく、大容量ファイルの転送信頼性も向上します。

2-3. S3 Select と Glacier Select

S3 Select は、S3 オブジェクトの中から SQL 式を使って必要なデータだけを取り出す機能です。
CSV・JSON・Parquet 形式のオブジェクトに対し、オブジェクト全体をダウンロードせずにフィルタリングや射影ができるため、データ転送量とアプリケーション処理コストを大幅に削減できます。

Glacier Select は S3 Glacier に保存したアーカイブデータに対して同様のクエリを実行できます。

2-4. S3 プレフィックス分散とリクエスト性能

S3 の読み取り・書き込み性能はプレフィックスごとに独立しており、プレフィックスを増やすほどスループットをスケールできます。
例えば 4 つの異なるプレフィックスを使えば、単一プレフィックスの場合と比べて最大 4 倍の PUT/COPY スループットが得られます。
高トランザクションのワークロードでは、キー名にランダムなプレフィックスやハッシュを付与してリクエストを分散させる設計が有効です。

S3高性能化 選択の判断軸

  • グローバル転送速度を上げたい → S3 Transfer Acceleration(エッジ経由)
  • 大容量ファイルのアップロードを高速化・信頼性向上 → マルチパートアップロード
  • 大量データから必要部分だけ取得してコスト削減 → S3 Select
  • 高スループットのWrite/Read → プレフィックス分散設計

3. CloudFront・Global Accelerator — コンテンツ高速配信

3-1. Amazon CloudFront の仕組み

Amazon CloudFront は AWS のグローバル CDN サービスで、世界各地のエッジロケーションにコンテンツをキャッシュし、エンドユーザーへの応答を高速化します。
オリジン(コンテンツの配信元)として S3 バケット・ALB・EC2・Lambda 関数 URL・その他のカスタムHTTPサーバーを設定できます。

試験で問われる主なポイントは以下のとおりです。

  • キャッシュ動作: パスパターンごとにキャッシュ設定を変更でき、動的コンテンツはキャッシュせず静的コンテンツのみキャッシュするといった設定が可能です
  • オリジンフェイルオーバー: プライマリとセカンダリの2つのオリジンを設定し、プライマリが障害を起こすと自動でセカンダリへ切り替えられます
  • 署名付きURL・署名付きCookie: 認証されたユーザーだけにコンテンツを配信したい場合に使い、有効期限付きのアクセス制御を実現します
  • フィールドレベル暗号化: 機密データをオリジンサーバーまで暗号化したまま転送できます
fig01: CDN/キャッシュ/DBレプリカ配置のレイテンシ最適化図
fig01: 高性能アーキテクチャ — CDN・キャッシュ・DBレプリカ多層設計

3-2. AWS Global Accelerator

AWS Global Accelerator は、アプリケーションに固定の エニーキャスト IP アドレス を割り当て、AWS のグローバルネットワーク経由でトラフィックを最適なリージョンへルーティングするサービスです。
CloudFront が HTTP/HTTPS のキャッシュ型 CDN であるのに対し、Global Accelerator は TCP/UDP の任意のプロトコル に対応します。

比較項目CloudFrontGlobal Accelerator
対象プロトコルHTTP/HTTPS(キャッシュ可)TCP/UDP(あらゆるプロトコル)
主な用途静的/動的Webコンテンツのキャッシュ配信ゲーム・IoT・金融取引など非HTTPアプリ
IPアドレスエッジドメイン名2つの固定エニーキャストIP
ヘルスチェック○(オリジンフェイルオーバー)○(リージョン間フェイルオーバー)

試験では「HTTPコンテンツを高速配信したい」なら CloudFront、「固定IPが必要・非HTTPプロトコルをグローバル最適化したい」なら Global Accelerator と判断します。

つまずきやすいポイント — CloudFront と Global Accelerator の混同
両者はどちらも「AWS のグローバルネットワークを使って高速化する」点は共通ですが、目的が異なります。
CloudFront はコンテンツのキャッシュ配信(キャッシュヒット時はオリジンへの通信なし)、
Global Accelerator はTCPセッションのネットワーク最適化(キャッシュなし・通信は必ずオリジンへ到達)です。
「Webサイトを高速化したい」なら CloudFront、「グローバルなリアルタイムアプリのIPを固定したい」なら Global Accelerator が答えになります。

4. キャッシュ層 — ElastiCache・DAX

4-1. Amazon ElastiCache の概要

Amazon ElastiCache は、マネージドのインメモリキャッシュサービスです。
データベースへの読み取り負荷を軽減し、ミリ秒以下の応答時間を実現します。
SAA-C03 で問われるのは主に RedisMemcached の2つのエンジンです。

比較項目RedisMemcached
データ構造文字列・リスト・セット・ハッシュ等文字列のみ(シンプル)
レプリケーション○(Multi-AZ/リードレプリカ)×
フェイルオーバー○(自動)×
Pub/Sub×
スケーリングクラスターモード(水平分散可)マルチスレッド・水平スケール

試験の判断ポイントです。

  • 高可用性・フェイルオーバー・Pub/Sub・複雑なデータ構造が必要 → Redis
  • シンプルなキャッシュ・マルチスレッド処理・水平スケールのシンプルさ → Memcached

4-2. キャッシュ戦略 — Lazy Loading vs Write-Through

戦略内容特徴
Lazy Loading(遅延読み込み)キャッシュミス時にDBから取得してキャッシュに書き込む初回は遅い・陳腐化データのリスクあり
Write-ThroughDBへの書き込みと同時にキャッシュも更新する常に最新データ・書き込みコスト増

Lazy Loading は読み取り頻度が高いデータに向いており、書き込みが少ない用途に適しています。Write-Through はデータの一貫性が重要な場合に使います。
TTL(有効期限)を設定して陳腐化データを自動削除する設計も併用します。

4-3. Amazon DAX — DynamoDB 専用キャッシュ

Amazon DAX(DynamoDB Accelerator) は、DynamoDB 専用のインメモリキャッシュです。
DynamoDB のシングルデジットミリ秒の応答時間を、さらに マイクロ秒単位 に短縮します。
アプリケーションは DAX エンドポイントへリクエストを送るだけで、自動的にキャッシュが機能します。

ElastiCache は汎用キャッシュ(Redis/Memcached で複数のDBやAPIをキャッシュ可)であるのに対し、DAX は DynamoDB 専用です。
「DynamoDB の読み取りレイテンシを下げたい」という要件が出たら DAX が第一候補になります。

キャッシュ選択の判断軸

  • DynamoDB の読み取りをマイクロ秒まで高速化 → DAX(DynamoDB専用)
  • RDS/Aurora の読み取り負荷を軽減・高可用性が必要 → ElastiCache Redis
  • シンプルなセッションキャッシュ・マルチスレッド → ElastiCache Memcached

5. データベース高性能設計 — Aurora・DynamoDB

5-1. Amazon Aurora の高性能機能

Amazon Aurora は MySQL・PostgreSQL 互換のマネージドリレーショナルDBで、通常の MySQL の最大5倍、PostgreSQL の最大3倍のスループットを実現します。

試験で問われる主な機能です。

  • Writerエンドポイントとリーダーエンドポイント: クラスターエンドポイント(Writer)とリーダーエンドポイントの2種を使い分け、読み取りを最大15台のリードレプリカへ自動分散します
  • Storage Auto Scaling: ストレージ使用量に応じて最大128TiB まで自動拡張されます
  • Aurora Serverless: 接続数・負荷に応じて DB キャパシティを自動スケールし、アイドル時はゼロまで縮小してコストを抑えます
  • Aurora Global Database: プライマリリージョンから最大5つのセカンダリリージョンへ1秒未満でレプリケーションし、リージョン間での低レイテンシ読み取りと DR を実現します

5-2. Amazon DynamoDB の高性能設計

Amazon DynamoDB はフルマネージドの NoSQL データベースで、規模に関わらずシングルデジットミリ秒の応答時間を提供します。

機能内容試験での判断
オンデマンドキャパシティリクエスト数に応じて自動スケール・プロビジョン不要予測困難なトラフィックに対応
プロビジョンドキャパシティRCU/WCU を事前設定・コスト予測しやすい安定したトラフィックでコスト最適化
GSI(グローバルセカンダリインデックス)プライマリキー以外の属性でクエリを効率化検索パターンが多様な場合
並列スキャンテーブルを分割して複数のワーカーが同時スキャン大規模テーブルのフルスキャン高速化
DynamoDB Streamsテーブルの変更をリアルタイムにストリームとして配信Lambda 連携・リアルタイム処理

5-3. RDS リードレプリカ

RDS では最大15台(MySQL/MariaDB/PostgreSQL)のリードレプリカを作成し、読み取り負荷をスケールアウトできます。
レプリケーションは非同期のため、レプリカのデータは数秒遅れる可能性があります(最終的一貫性)。
読み取りの多いワークロード(レポート生成・分析クエリ等)をリードレプリカへ向けることで、プライマリインスタンスへの負荷を軽減します。

クロスリージョンリードレプリカを使えば、DR 構成としても活用できます。

つまずきやすいポイント — Multi-AZ とリードレプリカの違い
Multi-AZ は可用性(フェイルオーバー)のための機能で、スタンバイレプリカは読み取りには使えません。
リードレプリカは読み取りパフォーマンスのスケールアウトのための機能です。
「障害時に自動切り替えしたい」= Multi-AZ、「読み取り負荷を分散したい」= リードレプリカ、と明確に区別しましょう。

6. ストレージ高性能設計 — EBS・EFS・FSx

6-1. Amazon EBS の高性能ボリューム

Amazon EBS は EC2 にアタッチするブロックストレージです。
高性能ワークロードでは以下のボリュームタイプを選択します。

ボリュームタイプ特徴用途
gp3(汎用SSD)ベースライン3,000 IOPS・125 MiB/s。IOPS とスループットを独立して設定可汎用ワークロード・コスパ優先
io2 Block Express最大256,000 IOPS・4,000 MiB/s・最高の耐久性(99.999%)ミッションクリティカル・大規模DB
st1(スループット最適化HDD)最大500 MiB/s・低コスト大容量シーケンシャルアクセス(ログ・データウェアハウス)
sc1(コールドHDD)最大250 MiB/s・最低コスト低アクセス頻度の大容量ストレージ

試験では「最大IOPSが必要なデータベース」= io2 Block Express、「スループットを最大化したい大容量処理」= st1 という判断が求められます。

また RAID 0 構成(複数の EBS ボリュームを1つの論理ボリュームとしてストライピング)を使うと、単一ボリュームの限界を超えた IOPS・スループットを実現できます。

6-2. Amazon EFS の高性能設定

Amazon EFS は複数の EC2 インスタンスが同時にアクセスできる共有ファイルシステムです。

  • スループットモード:
  • バースト: ストレージ使用量に比例したバーストクレジットで高スループットを確保
  • プロビジョン: 必要なスループットを事前に設定(ストレージ量に依存しない)
  • パフォーマンスモード:
  • 汎用(General Purpose): 低レイテンシ優先・Web サーバー等
  • 最大I/O(Max I/O): 高スループット優先・HPC・メディア処理等(レイテンシは汎用より高い)

6-3. FSx for Lustre — HPC・ML ワークロード

Amazon FSx for Lustre は、高性能並列ファイルシステムです。
HPC(高性能計算)・機械学習・動画処理などの I/O 集約型ワークロードに最適化されており、数百 GB/s のスループットと数百万 IOPS を実現します。
S3 と直接連携でき、S3 のデータを高性能なファイルシステムとして読み書きするユースケースでよく登場します。

「MLトレーニングで大量のデータを高速に読み込みたい」「HPC クラスターで共有ストレージが必要」という設問では FSx for Lustre が答えになります。

ストレージ高性能化 選択の判断軸

  • EC2アタッチ・最大IOPSのDB → EBS io2 Block Express
  • 複数EC2で共有・汎用ファイル共有 → EFS(汎用モード)
  • HPC・機械学習・動画処理・並列高スループット → FSx for Lustre
  • Windowsファイル共有(SMB・Active Directory連携) → FSx for Windows File Server

7. データ分析・処理 — Athena・Redshift・Kinesis

7-1. Amazon Athena の最適化

Amazon Athena は、S3 上のデータに対して標準 SQL でクエリを実行するサーバーレスの分析サービスです。
インフラ管理が不要で、クエリした分だけ課金されます(スキャンデータ量 per TB 単価)。

試験で問われる最適化手法です。

  • Parquet・ORC形式: CSV/JSON に比べ列指向圧縮フォーマットを使うと、スキャンデータ量を大幅に削減してクエリ速度とコストを改善できます
  • パーティションプルーニング: テーブルをパーティション(例: year/month/day)に分割し、WHERE 句でパーティションを指定することで不要なデータのスキャンをスキップします
  • 圧縮: Snappy・Gzip 等の圧縮でファイルサイズを削減し、スキャンコストと読み取り時間を短縮します

7-2. Amazon Redshift の高性能設計

Amazon Redshift は、AWS のクラウドデータウェアハウスサービスで、ペタバイト規模のデータ分析に対応します。

機能内容
AQUA(Advanced Query Accelerator)分散ストレージに近い場所でデータをスキャン・フィルタリングし、ノードへの転送量を削減して高速化
Redshift Serverlessキャパシティの事前設定なしに自動スケール・間欠的な分析ワークロードに対応
Redshift SpectrumRedshift クラスターから S3 上の外部テーブルをそのままクエリ(エクスポート不要)
同時クエリ実行(WLM)ワークロード管理(WLM)でクエリキューとメモリを分割管理

Athena と Redshift の使い分けは、サーバーレスの即時クエリ(Athena)定常的な大規模分析・大量の同時クエリ(Redshift) かで判断します。

7-3. Amazon Kinesis — ストリームデータ処理

Amazon Kinesis は、リアルタイムのストリームデータを処理するサービス群です。

サービス内容
Kinesis Data Streams大規模なストリームデータをリアルタイムに取り込み・処理。シャード単位でスループットをスケール
Kinesis Data Firehoseストリームデータを S3・Redshift・OpenSearch・Splunk へ自動配信。ゼロ管理・自動スケール
Kinesis Data Analytics(Managed Service for Apache Flink)ストリームデータにリアルタイム SQL・Flink 処理を適用

試験での判断ポイントです。

  • リアルタイム処理・カスタムコンソーマー(Lambda等) → Kinesis Data Streams
  • S3・Redshiftへの自動配信・管理不要 → Kinesis Data Firehose
  • ストリームへのリアルタイム SQL 分析 → Kinesis Data Analytics
つまずきやすいポイント — Athena vs Redshift Spectrum
どちらも S3 上のデータに SQL でクエリできますが、用途が異なります。
Athenaはスタンドアロンのサーバーレス分析ツールでインフラ不要です。
Redshift Spectrumは既存の Redshift クラスターから S3 を拡張テーブルとして使う機能です。
「Redshift クラスターは持ちたくない・アドホック分析」なら Athena、「Redshift クラスターがあり S3 データも一緒にクエリしたい」なら Spectrum が答えです。

8. CertTrend LMS D3 問題演習

D3「高性能アーキテクチャ設計」は出題比率24%(約16問)と高く、キャッシュ・CDN・DBスケーリング・分析など多様なサービスを横断する問題が出ます。
本記事で体系的なインプットができたら、次は 問題演習でアウトプット しましょう。

CertTrend LMS の SAA-C03 コースには D3 の出題範囲を網羅した 96問 を収録しています。
「どのキャッシュ戦略を選ぶか」「CloudFront か Global Accelerator か」といったシナリオ問題を繰り返すことで、本番での判断力を養えます。
すべての誤答へ AWS 公式ドキュメントに基づく解説が付いており、「わかったつもり」を確実に解消できます。

9. 実務で深掘り — 高性能設計本番運用記事

試験対策で体系を身に付けたら、本番環境での実装詳細をさらに深掘りしましょう。
以下の記事では、各サービスの本番運用レベルの設計・設定・運用ノウハウを解説しています。


Vol対象ドメイン状態
Vol0 ロードマップ全体(ハブ)準備中
Vol1 セキュアアーキテクチャ設計D1(120問・30%)準備中
Vol2 レジリエントアーキテクチャ設計D2(104問・26%)準備中
Vol3(本記事) 高性能アーキテクチャ設計D3(96問・24%)公開中
Vol4 コスト最適化アーキテクチャ設計D4(80問・20%)準備中