SAA高性能なアーキテクチャの設計
あるソーシャルメディアプラットフォームは Amazon DynamoDB テーブルにユーザー投稿を保存しています。テーブルには 10 億件のアイテムがあり、毎秒 100,000 回の読み取りリクエストが発生します。読み取りの 80% は人気インフルエンサーの最新投稿 1,000 件に集中しているホットパーティション状態です。DynamoDB のコストを削減しながら読み取りレイテンシーを最小化するソリューションとして最適なものはどれですか?
ADynamoDB Accelerator(DAX)クラスターを有効にしてホットアイテムをインメモリキャッシュする
✓ 正解
DAX は DynamoDB 専用のインメモリキャッシュで、ホットアイテムに対してマイクロ秒のレイテンシーを提供します。既存の DynamoDB API と完全互換でありアプリケーション変更が最小限で済みます。80% のアクセスが上位 1,000 件に集中しているためキャッシュヒット率が極めて高く、DynamoDB へのリクエスト数とコストが大幅に削減されます。
BAmazon ElastiCache for Redis をアプリケーション層の前段に配置し、キャッシュアサイドパターンを実装する
ElastiCacheも機能しますが、アプリケーションコードの大幅な変更が必要です。
C投稿の作成日時に Global Secondary Index(GSI)を作成して最新投稿へのクエリを最適化する
Global Secondary Index(GSI)はクエリパターンの最適化には有効ですがホットパーティション問題は解決しません。
DDynamoDB のプロビジョニング済み読み取りキャパシティユニット(RCU)をピーク負荷に合わせて大幅に増やす
RCU の増加はコスト増加のみでキャッシュほどのレイテンシー改善はありません。
解説
DAX は DynamoDB 専用のインメモリキャッシュで、ホットアイテムに対してマイクロ秒のレイテンシーを提供します。既存の DynamoDB API と完全互換でありアプリケーション変更が最小限で済みます。80% のアクセスが上位 1,000 件に集中しているためキャッシュヒット率が極めて高く、DynamoDB へのリクエスト数とコストが大幅に削減されます。
選択肢BのElastiCacheも機能しますが、アプリケーションコードの大幅な変更が必要です。
選択肢CのGlobal Secondary Index(GSI)はクエリパターンの最適化には有効ですがホットパーティション問題は解決しません。
選択肢DのRCU の増加はコスト増加のみでキャッシュほどのレイテンシー改善はありません。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでSAAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →