関係を具体的に扱うためにグラフデータベースを使用する価値があるかどうかを知りたいです。
「ユーザー」、「ページ」、「コメント」、「投稿」などのエンティティを格納するためにリレーショナル データベースを使用するふりをしています。
しかし、典型的なソーシャル グラフ ベースのワークロードのほとんどの場合、深いトラバーサルを取得する必要があり、リレーショナルでは対処しきれず、結合が遅くなります。
例:コメント-(made_in) ->投稿-(made_in) ->ページetc...
私はこのようなものを作ることを考えています:
例:
ユーザーID: 1
クエリ: user_id 1 のすべてのフォロワーを取得する
- ID 1 のノード ユーザーの「follows」という名前のすべての出力エッジについて、Neo4j にクエリを実行します。
ID のリストを使用して、Users テーブルでそれらをクエリします。
SELECT * FROM ユーザー WHERE user_id IN (ID)
これは遅いですか?
この質問を見たことがあります MySQL と Neo4j を一緒に使用することは良い考えですか? 、しかし、正解がなぜそれは良い考えではないと言うのか、まだ理解できません。
ありがとう