DEAデータストアの管理

ある企業は AWS Lambda 関数を使ったサーバーレスアーキテクチャを採用しており、バックエンドデータベースに Amazon Aurora MySQL 互換エディションを使用しています。 トラフィックのピーク時に Lambda 関数の同時実行数が急増し、Aurora に対して「Too many connections」エラーが頻発するようになりました。 この問題を解決するために、データエンジニアが実施すべき最も適切な対策はどれですか?

A
Amazon RDS Proxy を導入し、Lambda 関数からのデータベース接続をプール・共有する
✓ 正解
RDS Proxy はアプリケーションと Aurora の間に接続プールを設け、多数の Lambda 同時実行による接続爆発(Connection Storm)を防ぎます。Proxy が少数の長期接続をデータベースに保持しながら Lambda からのリクエストを多重化するため、「Too many connections」エラーを根本的に解消できます。
B
Aurora のパラメータグループで max_connections の値を引き上げる
Aurora のパラメータグループで max_connections を引き上げるのは応急処置であり根本解決になりません。
C
Aurora Serverless v2 に移行してデータベースのキャパシティを自動スケールさせる
Aurora Serverless v2 に移行するのはコンピュートのスケーリングであり接続数の上限問題は解決しません。
D
Amazon ElastiCache for Redis を追加して読み取りトラフィックをオフロードする
ElastiCache for Redis を追加するのは読み取りキャッシュ手段であり、書き込みや接続数の問題には対応できません。

解説

RDS Proxy はアプリケーションと Aurora の間に接続プールを設け、多数の Lambda 同時実行による接続爆発(Connection Storm)を防ぎます。Proxy が少数の長期接続をデータベースに保持しながら Lambda からのリクエストを多重化するため、「Too many connections」エラーを根本的に解消できます。 選択肢BのAurora のパラメータグループで max_connections を引き上げるのは応急処置であり根本解決になりません。 選択肢CのAurora Serverless v2 に移行するのはコンピュートのスケーリングであり接続数の上限問題は解決しません。 選択肢DのElastiCache for Redis を追加するのは読み取りキャッシュ手段であり、書き込みや接続数の問題には対応できません。

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

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

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