SOA-C03:AWS Certified CloudOps Engineer - Associate 信頼性と事業継続性 問7
信頼性と事業継続性/スケーラビリティと伸縮性の実装読み取りが非常に多いアプリで、同じクエリ結果を繰り返しリレーショナルデータベースへ問い合わせており、DB の負荷が高くレイテンシも悪化しています。DB への読み取り負荷を下げ、応答を高速化・スケールさせたいと考えています。最も適切なのはどれですか。
当サイトのオリジナル問題(SOA-C03:AWS Certified CloudOps Engineer - Associateの出題範囲「信頼性と事業継続性」に対応。実際の試験問題ではありません)
- AAmazon ElastiCache(Redis/Memcached)を導入し、よくアクセスされるデータをインメモリにキャッシュして DB への読み取りをオフロードする
- BDB インスタンスを毎晩再起動してキャッシュを初期化する
- Cすべての読み取りを書き込みと同じ経路にまとめて直列化する
- Dアプリのログ出力を増やして負荷の内訳を記録する
正解:A
解説
Amazon ElastiCache(Redis/Memcached)は、頻繁にアクセスされるデータをインメモリにキャッシュするマネージドサービスです。繰り返し発行される読み取りクエリの結果をキャッシュから返すことで、バックエンドのリレーショナルデータベースへの読み取り負荷を下げ、レイテンシを改善しつつ読み取りをスケールできます。
選択肢ごとの解説
- A正しい。ElastiCache でよくアクセスされるデータをキャッシュすれば、DB への読み取りをオフロードして高速化・スケールできます。
- B誤り。DB の再起動はキャッシュ戦略ではなく、読み取り負荷の軽減になりません。
- C誤り。読み取りと書き込みを直列化すると、むしろスループットが下がります。
- D誤り。ログの増量は負荷の把握には役立っても、読み取り負荷そのものは下げません。