Q23 — AWS SAA-C03 第4章

第 23/105 問 | ← 第4章

Q218. ある企業が、Application Load Balancer の後ろで Amazon EC2 インスタンス上に電子商取引アプリケーションを実行しています。これらのインスタンスは、複数の可用性ゾーンにまたがる Amazon EC2 Auto Scaling グループ内で動作しており、CPU 使用率のメトリクスに基づいてスケーリングされます。電子商取引アプリケーションは、大きな EC2 インスタンス上でホストされている MySQL 8.0 データベースにトランザクションデータを保存します。アプリケーションの負荷が増加すると、データベースのパフォーマンスは急速に低下します。アプリケーションでは、書き込みトランザクションよりも読み取り要求のほうが多く発生します。企業は、予測不可能な読み取りワークロードの需要に自動的に応じてデータベースをスケールし、かつ高可用性を維持するソリューションを求めています。 この要件を満たすソリューションはどれですか?

正解: C. Amazon Aurora をマルチAZデプロイで使用し、Aurora レプリカとともに Aurora Auto Scaling を設定する。

解説

要件は「予測不可能な読み取りワークロードへの自動スケーリング」と「高可用性」です。MySQL 8.0 を基盤とする既存のデータベース環境であり、読み取り負荷が主なボトルネックであるため、読み取り専用のスケーラブルなレプリカ機能が必要です。 選択肢A:Amazon Redshift はデータウェアハウス向けの分析用サービスであり、OLTP(トランザクション処理)用途の MySQL 置き換えには不適切です。また、単一ノード構成は高可用性を満たしません。 選択肢B:Amazon RDS のシングルAZデプロイは、可用性ゾーン単位の障害に弱く、高可用性を保証しません(マルチAZデプロイが必要)。また、RDS のリーダーインスタンス(Read Replica)は手動またはスケジュールベースでの追加が主で、Aurora ほど柔軟・自動的なスケーリング(Aurora Auto Scaling)は提供されません。 選択肢C:Amazon Aurora は MySQL 互換であり、マルチAZデプロイにより自動フェイルオーバーと高可用性を実現します。さらに、Aurora Auto Scaling を使用すれば、読み取り負荷に応じて Aurora レプリカの数を自動的に増減でき、予測不可能な読み取りワークロードに最適です。これは要件を完全に満たします。 選択肢D:ElastiCache for Memcached はキャッシュ層であり、永続的なトランザクションデータの保存やACID保証を提供せず、データベースの代替にはなりません。EC2 スポットインスタンスの使用は可用性リスクを高め、高可用性の要件に反します。 したがって、正解は C です。