無限ノック › SAA 練習問題一覧 › 問題
SAA高性能なアーキテクチャの設計

グローバルなモバイルゲーム会社が、Amazon DynamoDBでリアルタイムリーダーボードを管理しています。ピーク時には毎秒100万回以上の読み取りリクエストが発生し、現在p99レイテンシ(全リクエストのうち遅い方から1%に相当する応答時間の閾値)が20msを超えています。書き込みは毎秒数千件と少なく、アプリケーション要件として単桁ミリ秒のレイテンシが必要です。最もコスト効率よくパフォーマンスを改善するソリューションはどれですか?

A
DynamoDBをAmazon Aurora Global Databaseに移行し、リードレプリカエンドポイントを使って読み取りをスケールする
Aurora Global DatabaseはDynamoDBのスキーマレス設計・柔軟なデータモデルを失い、大規模なデータ移行とアプリケーション改修が必要で、要件達成に不適切です。
B
Amazon DynamoDB Accelerator(DAX)クラスターをDynamoDBの前段に配置し、インメモリキャッシュを活用する
✓ 正解
DAXはDynamoDB専用のフルマネージドインメモリキャッシュで、読み取りレイテンシをミリ秒からマイクロ秒に短縮します。DynamoDB APIと完全互換でアプリケーション変更が最小限となり、毎秒100万回超の読み取りに対応可能で、単桁ミリ秒要件を達成できます。
C
DynamoDBのプロビジョンドキャパシティ(RCU:読み取りキャパシティユニット)を現在の10倍に引き上げる
RCUを大幅増加してもレイテンシ改善には直結せず、スループットキャパシティが増えるだけです。コストが大幅に増加するため、単桁ミリ秒要件は達成できません。
D
Amazon ElastiCache for Redisを並行導入し、アプリケーション側でDynamoDBとのデータ同期ロジックを実装する
ElastiCache for Redisはアプリケーション側でDynamoDBとのデータ同期ロジックを実装する必要があり、整合性維持の運用負荷が高く、DAXと比べてコスト効率が低下します。

解説

選択肢AのAurora Global Databaseへの移行はDynamoDBのスキーマレス設計・柔軟なデータモデルなど既存の特性を失い、大規模なデータ移行とアプリケーション改修が必要となるため適切ではありません。 選択肢B(DAX)が正解です。DynamoDB専用のフルマネージドインメモリキャッシュで、読み取りレイテンシをミリ秒単位からマイクロ秒単位に短縮できます。DynamoDB APIと完全互換のためアプリケーションコードの変更が最小限で済み、毎秒100万回超の読み取りにも対応できます。 選択肢C(RCU大幅増加)はスループットキャパシティを増やすだけでレイテンシの改善にはなりません。コストが大幅に増加するだけで単桁ミリ秒の要件は達成できません。 選択肢D(ElastiCache for Redis)は汎用的なキャッシュとして機能しますが、アプリケーション側でDynamoDBとのデータ同期ロジックを実装する必要があり、整合性維持の運用負荷が高くDAXと比べてコスト効率も低下します。

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

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

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