2011-11-14 2 views
1

私はタグの概念を使用して、他に似た検索要素のためのクエリを持っていました:のNeo4jサイファークエリのパフォーマンス

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 

「類似」タイプのプロパティを使用して索引付けされたノードのセットです。 "To"は、 "類似の"ノードと比較しなければならないノードです。

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

order by句および/またはcount句を削除すると、パフォーマンスが向上しません。

+0

偶然、テストデータベースまたはデータジェネレータを提供してもらえますか?それを見てプロファイルしたいと思いますか? –

答えて

0

あなたはどのバージョンのNeo4jを使用していますか?どのようにクエリ(REST、Webコンソール、シェル、Java)を実行しますか?これはセッションで最初に実行されるのでしょうか?

toが最初に来るように、一致句を書き直すことはできますか?違いはありませんが、知ることは面白いでしょう。

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

どうもありがとうございました。

+0

私はJavaを使用しています。バージョンは1.5M02です。これはセッションで実行されるフリースタイルではありません。 「似ている」と「差し替え」を差し替えようとしました。 –

関連する問題