フィルタリングWHERE句を実行するときに、Cypher実行エンジンによって使用される(ノードまたは関係)プロパティの自動インデックスはありますか?そうでない場合、Cypherにそれらを使用するように指示する方法はありますか?サードパーティ(Luceneなど)のインデックスについてはどうですか?
質問する
2309 次
1 に答える
6
これは私たちがよく考えたことですが、残念ながらまだです。
Neo4jのインデックス作成部分は間もなくオーバーホールされます。その場合、Cypherをそれに近づけて、これを実行できるようにします。また、他の興味深いこと(使用する適切なインデックスを選択するヒューリスティックなど)も行います。
ただし、手動で行うことができます。モデルがあり、映画に参加したKevin Baconという名前のすべての俳優が必要な場合movies<-[:ACTS_IN]-actor
は、次のように記述できます。
START movie=node:movies("title:M*")
MATCH movie<-[:ACTS_IN]-actor
WHERE actor.name = "Kevin Bacon"
RETURN movie.title
または、インデックスでも同じことができます。
START movie=node:movies("title:M*"),
actor=node:actors(name="Kevin Bacon")
MATCH movie<-[:ACTS_IN]-actor
RETURN movie.title
どちらが最速かはわかりません。依存します。
于 2011-11-30T19:39:44.237 に答える