無限ノック › SAA 練習問題一覧 › 問題
SAAコスト最適化されたアーキテクチャの設計

あるEコマース企業の商品カタログシステムは、Amazon RDS MySQL (db.r6g.2xlarge) に 50 万件の商品データを保存しています。商品データの更新頻度は 1 日 2〜3 回ですが、アプリケーションからは 1 分あたり 5 万件の読み取りクエリが発行されており、RDS のコストが高騰しています。データモデルを変更せずに読み取りコストを最大限削減したい場合、最も効果的な対策はどれですか?

A
RDS リードレプリカを 3 台追加して読み取りトラフィックを分散し、プライマリへの負荷を下げる
リードレプリカを 3 台追加すると読み取り負荷は分散できますが、各レプリカはプライマリと同額の費用が時間単位で発生します。総コストが約 4 倍になり、コスト削減の目的に反します。
B
Amazon ElastiCache for Redis で商品データをキャッシュし、RDS への読み取りクエリ数を削減する
✓ 正解
ElastiCache for Redis は更新頻度が低く参照頻度が高いデータのキャッシュに最適です。RDS へのクエリを大幅に削減でき、データモデルを変更せずにコストを大幅に最小化できます。
C
RDS インスタンスを db.r6g.4xlarge にスケールアップし、クエリ処理能力と最大接続数を向上させる
インスタンスサイズをスケールアップすると費用が増加します。発行されるクエリ数は変わらないため、コスト削減効果はなくコストが増加するだけです。
D
Amazon DynamoDB Accelerator(DAX)を前段に追加し、インメモリキャッシュで読み取りレイテンシを短縮する
DAX は Amazon DynamoDB 専用の高速インメモリキャッシュです。RDS MySQL には対応していないため、MySQL バックエンドを持つこのシステムには利用できません。

解説

Amazon ElastiCache for Redis はインメモリキャッシュサービスです。更新頻度が低く(1 日 2〜3 回)読み取り頻度が非常に高い(1 分あたり 5 万件)商品カタログのような参照データのキャッシュに最適です。データを ElastiCache にキャッシュすることで RDS への読み取りクエリを 90% 以上削減でき、場合によっては RDS インスタンスのダウンサイズも可能になります。リードレプリカを追加するよりも費用対効果が高く、データモデルの変更も不要です。 選択肢Aの RDS リードレプリカは読み取り負荷を分散できますが、各レプリカはプライマリと同等の時間課金が発生します。3 台追加すると総コストが約 4 倍になり、コスト削減の目的に反します。 選択肢Cの RDS インスタンスのスケールアップはクエリ処理能力を増やしますが、費用も増加します。発行されるクエリ数は変わらないため、根本的なコスト削減にはなりません。 選択肢Dの DynamoDB Accelerator(DAX)は Amazon DynamoDB 専用のインメモリキャッシュです。RDS MySQL には使用できないため、このシナリオには適用できません。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでSAAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← SAA の問題一覧に戻る