4

私は現在、Neo4j と Neography を使用して何かを構築しており、トラバース メソッドとサイファー クエリのどちらを使用するのが好ましいか疑問に思っていました。

個人的にはCypherが好きですが、どちらが優れている/パフォーマンスが高いのかわかりません

4

3 に答える 3

4

約 100 万ノードのグラフで、Cypher vs Core API と Traverser Framework のフレンド オブ フレンド クエリのベンチマークを作成しました。FOAF クエリはそれほど複雑ではありませんが、neo4j のようなグラフ データベースの適切な使用例です。

http://www.rene-pickhardt.de/get-the-full-neo4j-power-by-using-the-core-java-api-for-traversing-your-graph-data-base-instead-of-暗号クエリ言語/

Cypher のパフォーマンスが少なくとも 1 桁遅くなる

Cypher のパフォーマンスがコア API よりもはるかに悪いことがわかります。

于 2012-11-06T12:27:14.427 に答える
2

どちらにもそれぞれのスイート スポットがあると確信しており、Cypher はクエリをより直感的に表現できるようになっていると思います。Cypher を使用してクエリを作成してみてください。それが好みであり、パフォーマンスが満足できる場合は、それで問題ありません。そうでない場合は、トラバーサル フレームワークで試してみてください。

于 2012-05-30T20:10:10.547 に答える
1

Matthias が指摘したように、Cypher は確かに直感的ですが、次の推奨事項があります。

ささいなことであれば、Cypher を使用すると、作成が簡単になり (実際には喜びです)、パフォーマンスが大幅に低下することはありません。ただし、一致または条件付きクエリが大きくなると、カスタム トラバーサーまたは Gremlin を使用すると、グラフのドメイン知識があればパフォーマンスが大幅に向上する可能性があります。

于 2012-06-11T22:35:02.603 に答える