1

タグの概念を使用して、別の検索要素に似たクエリを作成しました。

START similar=node:TYPE_INDEX("type1"), to=node(20325) 
match similar-[:TAGGED]->tag<-[:TAGGED]-to
return distinct similar, count(tag)
order by count(tag) DESC

「類似」は、type プロパティを使用してインデックス付けされた一連のノードです。「To」は、「類似」ノードと比較する必要があるノードです。

同様のクエリ自体は 500 ノードを返し、リレーション TAGGED の数は 3000 です。タグ ノードは 500 です。私のマシンでは、このクエリに 50 秒かかります。

order by 句や count 句を削除してパフォーマンスを向上させないでください。

4

1 に答える 1

0

どのバージョンの Neo4j を使用していますか? どのようにクエリを実行しますか (REST、Web コンソール、シェル、Java)? これはセッションの最初の実行ですか、それとも 2 回目または 3 回目ですか?

tomatch 句を書き直して、それが最初に来るようにしてもらえますか? 違いはありませんが、知っておくと興味深いでしょう。

match to-[:TAGGED]->tag<-[:TAGGED]-similar

どうもありがとう。

于 2011-11-15T04:25:02.430 に答える