Q88 — AWS SAA-C03 第12章
第 88/100 問 | ← 第12章
Q888. AWS上でアプリケーションを実行している企業が、データベースとしてAmazon Aurora DBクラスターを使用しています。複数のユーザーが同時にデータにアクセス・読み取りを行うピーク時において、監視システムが書き込みクエリのデータベースパフォーマンス低下を示しています。この企業は、ピーク時の需要に対応できるアプリケーションのスケーラビリティを向上させたいと考えています。これらの要件を最もコスト効率よく満たす解決策はどれですか?
- A. 第2のAmazon Aurora DBクラスターを作成し、ユーザーのデータを新しいデータベースへレプリケートするコピージョブを設定します。アプリケーションを更新して、読み取り用にこの第2のデータベースを利用するようにします。
- B. 既存のAmazon Aurora DBクラスターの前にAmazon DynamoDB Accelerator(DAX)クラスターを作成します。アプリケーションを更新して、読み取り専用クエリにはDAXクラスターを利用し、書き込みデータは直接Amazon Aurora DBクラスターに送信するようにします。
- C. 既存のAmazon Aurora DBクラスター内にAurora読み取りレプリカを作成します。アプリケーションを更新して、読み取り専用クエリには読み取りレプリカのエンドポイントを、書き込みクエリにはクラスターエンドポイントを利用するようにします。 ✓
- D. Amazon Redshiftクラスターを作成し、ユーザーのデータをRedshiftクラスターにコピーします。アプリケーションを更新してRedshiftクラスターに接続し、読み取り専用クエリをRedshift上で実行するようにします。
正解: C. 既存のAmazon Aurora DBクラスター内にAurora読み取りレプリカを作成します。アプリケーションを更新して、読み取り専用クエリには読み取りレプリカのエンドポイントを、書き込みクエリにはクラスターエンドポイントを利用するようにします。
解説
アプリケーションのスケーラビリティを高め、ピーク時の需要に対応するためには、以下の解決策が最もコスト効率が良いです: C. 既存のAmazon Aurora DBクラスター内にAurora読み取りレプリカを作成し、アプリケーションを更新して読み取り専用クエリには読み取りレプリカのエンドポイントを、書き込みクエリにはクラスターエンドポイントを利用するようにします。 Amazon Auroraでは、同一DBクラスター内に読み取りレプリカを作成できます。これにより、プライマリインスタンスへの読み取りトラフィックをレプリカにオフロードし、アプリケーション全体のスケーラビリティを向上させることができます。読み取りレプリカは読み取り専用クエリを処理することで、プライマリインスタンスの負荷を軽減し、ピーク時の書き込みクエリのパフォーマンスを改善します。アプリケーションは、読み取り専用クエリをレプリカのエンドポイントに、書き込みクエリをクラスターエンドポイントにルーティングするよう更新すればよいのです。 選択肢Aは、第2のAurora DBクラスターを作成し、データをレプリケートするというアプローチですが、別途DBクラスターの管理・運用およびデータレプリケーションの複雑さとコストが追加されます。 選択肢Bは、DAXクラスターを導入して読み取り性能を向上させるものですが、DAXはキャッシュによる読み取り高速化に特化しており、書き込みクエリのスケーラビリティ向上には直接寄与しません。また、DAXの導入には追加コストがかかります。 選択肢Dは、分析・レポート向けに設計されたデータウェアハウスサービスであるAmazon Redshiftを読み取り専用データベースとして利用するものです。運用データベースとしての使用には不適であり、データレプリケーションのオーバーヘッドが発生し、書き込みパフォーマンスの改善にはつながりません。 以上より、コスト効率よくスケーラビリティを高め、ピーク時の需要に対応するには、既存のAurora DBクラスター内に読み取りレプリカを作成し、アプリケーションを読み取りレプリカのエンドポイントへ読み取りクエリをルーティングするよう更新する(選択肢C)が最も適した解決策です。