Q8 — AWS SAA-C03 第3章
第 8/65 問 | ← 第3章
Q138. ある企業が、顧客情報を Amazon RDS for MySQL に格納する注文アプリケーションを運用しています。通常の営業時間中、従業員はレポート作成のためにワンタイムクエリを実行します。しかし、これらのレポートクエリの実行時間が長いため、注文処理中にタイムアウトが発生しています。この企業は、従業員によるクエリ実行を制限することなく、タイムアウトを解消する必要があります。このような要件を満たすために、ソリューションアーキテクトは何を行うべきでしょうか?
- A. 読み取り専用レプリカを作成し、レポート用クエリをその読み取り専用レプリカに移行する。 ✓
- B. 読み取り専用レプリカを作成し、注文アプリケーションをプライマリDBインスタンスと読み取り専用レプリカの両方に分散させる。
- C. 注文アプリケーションを、オンデマンドキャパシティを使用する Amazon DynamoDB に移行する。
- D. レポート用クエリをピーク時以外の時間帯に実行するようスケジュールする。
正解: A. 読み取り専用レプリカを作成し、レポート用クエリをその読み取り専用レプリカに移行する。
解説
読み取り専用レプリカ(Read Replica)は、Amazon RDS for MySQL において、読み取り負荷をプライマリDBインスタンスから分離するための標準的な設計パターンです。レポートクエリのような重い読み取りワークロードを読み取り専用レプリカにオフロードすることで、プライマリインスタンスの負荷を軽減し、注文処理(書き込みおよびリアルタイム読み取り)のタイムアウトを防止できます。また、従業員は引き続きクエリを実行でき、業務への影響も最小限に抑えられます。選択肢Bは誤りで、注文アプリケーションを読み取り専用レプリカに書き込み操作させることはできません(読み取り専用レプリカは書き込み不可)。選択肢Cは、アプリケーションの再設計・移行が必要であり、要件にある「従業員のクエリを阻止しない」という条件を満たしてはいますが、過剰な変更であり、最も適切な解決策ではありません。選択肢Dは、ビジネス要件(営業時間中のレポート実行)に反します。したがって、正解はAです。