AWS認定資格 WEB問題集&徹底解説

ソリューションアーキテクト – アソシエイト

正解 A,C問題
(お気に入りチェック) 1 2 3 4
解説
正解はA、Cです。リアルタイムランキング機能では、高速な読み書き性能、順位計算機能、高可用性が求められます。

選択肢 A:ElastiCache for Redisは、Sorted Set(ZSET)というデータ構造を提供しており、スコアに基づいた自動ソート機能により、O(log N)の計算量で順位の取得・更新が可能です。マルチAZ構成による自動フェイルオーバー機能があり、99.9%以上の可用性要件を満たせます。また、揮発性データとしての利用に最適です。この選択肢は正解です。

選択肢 B:DynamoDB Accelerator(DAX)は、DynamoDBの読み取り専用キャッシュとして動作します。ランキング機能では頻繁な書き込みと順位計算が必要ですが、DAXは書き込みをキャッシュせず、またソート順位を効率的に計算する仕組みがありません。DynamoDB自体もランキング計算には向いていないため不適切です。

選択肢 C:Amazon MemoryDB for Redisは、Redis互換のフルマネージドインメモリデータベースサービスで、ElastiCache for Redisと同様にSorted Set機能を使用できます。マルチAZ構成で高可用性を提供し、データの永続化も可能ですが、今回は永続化不要のため、その機能は使用しません。低レイテンシーとリアルタイム処理の要件を満たします。この選択肢は正解です。

選択肢 D:RDS for MySQLはリレーショナルデータベースであり、ディスクベースのストレージを使用します。リードレプリカによる読み取りスケールは可能ですが、1秒以内のリアルタイム順位計算には、大量の参加者に対してORDER BYやCOUNTクエリを実行する必要があり、インメモリデータストアと比較してレイテンシーが高くなります。要件を満たしません。

関連サービスの解説
Amazon ElastiCache
Amazon Neptune

+ 質問 / コメント
解答・解説に疑問がある場合や、よりよい解説がある場合など、お気軽にコメントください。ただし、短文コメントは表示されません。また、中傷などコメントの内容によっては、会員機能を停止させて頂きます。教え学び合える場になれば嬉しいです。(コメント投稿にはログインが必要です)
正答率 35%
No.13 解説
あるオンライン学習プラットフォームでは、受講者が毎週参加するクイズ大会のスコアをリアルタイムで表示するランキング機能を実装する必要があります。このランキングは毎回3,000人以上の同時参加者を対象とし、回答送信から1秒以内にスコアと順位を更新して表示する必要があります。また、サービスの可用性は99.9%以上を維持し、データは永続化せず、各大会終了後にクリアされる要件があります。Solutions Architectとして、最も適切なソリューションを2つ選んでください。
  • ElastiCache for Redisを使用してランキング機能を実装する。Sorted Setデータ構造によりリアルタイムな順位計算が可能で、マルチAZ構成により高可用性を実現できる
  • DynamoDB Accelerator(DAX)を使用してランキング機能を実装する。インメモリキャッシュによりミリ秒未満のレスポンスタイムが実現でき、マネージドサービスとして高可用性を提供する
  • Amazon MemoryDB for Redisを使用してランキング機能を実装する。Redis互換のインメモリデータベースとして低レイテンシーと高可用性を提供し、永続化も可能である
  • Amazon RDS for MySQLのリードレプリカを複数配置して負荷分散する。インデックスを適切に設定することで高速なクエリ処理が可能である

(会員限定)当問題の評価をお願いします。改善に活用します。