DEAデータストアの管理
ある企業が、ネストされた JSON 形式の製品カタログを管理しています。各ドキュメントは可変スキーマを持ち、任意の属性に対するアドホックなクエリ、二次インデックス、集計パイプライン(aggregation)が必要です。既存の開発チームは MongoDB のドライバーと API に精通しており、移行の労力を最小化したいと考えています。最も適したマネージドサービスはどれですか。
AAmazon DynamoDB に JSON を属性として保存し、複数のグローバルセカンダリインデックスでアドホッククエリを実現する
DynamoDB はキーアクセスに最適化されたNoSQLで、任意属性へのアドホッククエリや MongoDB の集計パイプラインに相当する機能を持たず、アクセスパターンごとに GSI を事前設計する必要があり MongoDB スキルも活かせません。
BAmazon DocumentDB(MongoDB 互換)にドキュメントを保存し、MongoDB API とドライバーでクエリ・集計を実行する
✓ 正解
DocumentDB は MongoDB 互換のマネージドドキュメントDBで、可変スキーマ・任意属性インデックス・集計パイプラインにネイティブ対応し、既存の MongoDB ドライバーと API をそのまま使えるため移行労力が最小になり要件に最適です。
CAmazon RDS for PostgreSQL の JSONB 列にドキュメントを保存し、SQL でクエリと集計を実行する
RDS for PostgreSQL の JSONB は柔軟なクエリと集計を SQL で実現できますが、MongoDB API・ドライバーは利用できず、アプリケーションを SQL へ書き換える必要があるためチームの既存スキルと移行効率の点で劣ります。
DAmazon Keyspaces(Apache Cassandra 互換)にドキュメントを保存し、CQL でクエリと集計を実行する
Keyspaces は Cassandra 互換のワイドカラムストアで、パーティションキー中心のアクセスに最適化されており、ネストされたドキュメントへの柔軟なアドホッククエリや集計パイプラインには適さず MongoDB スキルも活かせません。
解説
可変スキーマの JSON ドキュメント、アドホックなクエリ、二次インデックス、集計パイプラインという要件と、チームが MongoDB に精通している点から Amazon DocumentDB が最適です。
DocumentDB は MongoDB 互換のマネージドドキュメントデータベースで、既存の MongoDB ドライバー・API・集計パイプラインをそのまま利用できるため移行労力が最小になります。任意属性へのインデックス作成とリッチなクエリにネイティブ対応します。
選択肢Aの DynamoDB は、キーバリュー/ドキュメントストアだが集計パイプラインやアドホックな任意属性クエリには不向きで、アクセスパターンに合わせた事前のインデックス設計が必要となる。
選択肢Cの RDS for PostgreSQL は JSONB で柔軟なクエリは可能だが、MongoDB API は使えず SQL への書き換えが必要でチームの既存スキルを活かせない。
選択肢Dの Amazon Keyspaces は Cassandra 互換のワイドカラムストアで、ネストされたドキュメントの集計パイプラインや柔軟なアドホッククエリには適さない。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでDEAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →