DVA-C02:AWS Certified Developer - Associate トラブルシューティングと最適化 問11
トラブルシューティングと最適化/AWS サービス・機能によるアプリの最適化読み取りが非常に多いアプリで、データベースの前段にインメモリキャッシュ(Amazon ElastiCache)を置く。必要になったデータだけをキャッシュに載せ、ミスした場合に DB から読み込んでキャッシュする戦略はどれか。
当サイトのオリジナル問題(DVA-C02:AWS Certified Developer - Associateの出題範囲「トラブルシューティングと最適化」に対応。実際の試験問題ではありません)
- Aライトスルー(書き込み時に必ずキャッシュも更新する)
- Bキャッシュを使わず毎回 DB から読む
- C遅延読み込み(Lazy Loading。キャッシュミス時に DB から読み込んでキャッシュに格納する)
- Dすべてのデータを起動時に一括で読み込む
正解:C
解説
遅延読み込み(Lazy Loading)は、要求されたデータがキャッシュに無い(ミス)ときに DB から読み込んでキャッシュに格納する戦略で、実際に必要なデータだけをキャッシュします(古さ=stale への対処が課題)。一方ライトスルーは書き込み時に必ずキャッシュも更新する戦略です。キャッシュ不使用や全件一括読み込みは、設問の説明に当たりません。
選択肢ごとの解説
- A誤り。ライトスルーは書き込み時にキャッシュを更新する別戦略で、ミス時読み込みの説明ではありません。
- B誤り。キャッシュ不使用は読み取り負荷軽減になりません。
- C正しい。ミス時にDBから読んで載せるのは遅延読み込み(Lazy Loading)です。
- D誤り。全件一括読み込みは設問の遅延読み込みの説明ではありません。