無限ノック › DEA 練習問題一覧 › 問題
DEAデータストアの管理

あるソーシャルメディア企業が、ユーザー間の「フォロー」「友達申請」「グループメンバーシップ」などの関係性データを管理するデータベースを設計しています。 主な要件は以下の通りです。 ・「ユーザー A から3ホップ以内の繋がり」を高速にクエリする ・共通の友人数をもとにした「知り合いかも」レコメンデーション機能 ・数億ノード・数十億エッジ規模のデータを扱う この要件に最も適した AWS マネージドデータベースサービスはどれですか? ※ ホップ:グラフ上でノードからノードへの1ステップの移動を指す

A
Amazon Neptune
✓ 正解
Amazon Neptune はグラフデータベースに特化したマネージドサービスで、Property Graph(Gremlin / openCypher)と RDF(SPARQL)の両クエリ言語をサポートしています。ホップ数を指定したグラフトラバーサルや共通ノードのパターンマッチングをネイティブに処理でき、ソーシャルグラフやレコメンデーションエンジンのユースケースに最適です。
B
Amazon DynamoDB(隣接リストパターンで関係性を表現)
DynamoDBは隣接リストパターンでグラフ構造を表現することは可能ですが、マルチホップのトラバーサルはアプリケーション側で複数のクエリを繰り返す必要があり、深い探索では非効率です。
C
Amazon RDS for PostgreSQL(再帰的 CTE を使用してグラフ探索)
RDS PostgreSQL+再帰CTEはグラフ探索を記述できますが、リレーショナルエンジンは数億ノード・数十億エッジ規模のトラバーサルに対するスケーラビリティが限定されます。
D
Amazon OpenSearch Service
OpenSearch Serviceは全文検索・ログ分析・集計に優れますが、グラフトラバーサルや関係性の多段探索には対応していません。

解説

Amazon Neptune はグラフデータベースに特化したマネージドサービスで、Property Graph(Gremlin / openCypher)と RDF(SPARQL)の両クエリ言語をサポートしています。ホップ数を指定したグラフトラバーサルや共通ノードのパターンマッチングをネイティブに処理でき、ソーシャルグラフやレコメンデーションエンジンのユースケースに最適です。 選択肢BのDynamoDBは隣接リストパターンでグラフ構造を表現することは可能ですが、マルチホップのトラバーサルはアプリケーション側で複数のクエリを繰り返す必要があり、深い探索では非効率です。 選択肢CのRDS PostgreSQL+再帰CTEはグラフ探索を記述できますが、リレーショナルエンジンは数億ノード・数十億エッジ規模のトラバーサルに対するスケーラビリティが限定されます。 選択肢DのOpenSearch Serviceは全文検索・ログ分析・集計に優れますが、グラフトラバーサルや関係性の多段探索には対応していません。

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

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

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