web-dev-qa-db-ja.com

neo4jを使用しないのはいつですか?

Neo4jはリレーショナルデータをマッピングするための優れたツールですが、どのような条件下で使用するのが適切でないのか興味があります。

どのユースケースでneo4jを使用するのは悪い考えですか?

18
Tim Ferrell

このスライドデッキ 、特にスライド18〜22を確認することをお勧めします。

あなたの質問には多くの詳細が含まれている可能性がありますが、大きな部分に焦点を当ててみましょう。グラフデータベースは 自然にインデックスが付けられます 関係によって。したがって、グラフデータベースは、多くの関係をトラバースする必要がある場合に適しています。グラフ自体は非常に柔軟性があるため、データ間の相互接続を随時変更する必要がある場合や、保存することが重要なコアオブジェクトに関するデータを変更する必要がある場合に適しています。グラフは、ピアツーピアネットワーク、ロードマップ、組織構造など、一部(すべてではない)のデータソースをモデル化する非常に自然な方法です。

グラフは、物事の膨大なリストを管理するのが苦手な傾向があります。たとえば、分析を使用して顧客トランザクションデータベースを構築する場合(100万人の顧客、5,000万人のトランザクションが必要で、1日中トランザクションを投稿するだけの場合)、おそらく適切ではありません。 RDBMSはその点で優れています。そのユースケースが、関係を実際に活用していないことに注目してください。

私が提供したこれらの2つのリンクを必ず読んでください、彼らははるかに多くの議論をしています。

17
FrobberOfBits

メンテナンス上の理由から、データフィードを集約するサービスは、これまで、ソースを独立させておくようにアドバイスされてきました。

異なるフィード間の関係を調査したい場合は、他のフィード間でのデータ追跡(たとえば)ユーザー設定を使用して、アプリケーションレベルでこれを行うことができます。

グラフデータベースは、関係の複雑さの管理に関するものですが、この複雑さは多くの場合、設計上の選択です。石鹸を落とすまで、すべての子供を1つの浴槽に入れても問題ありません。

1
user1019696