2017-11-07 7 views
1

Neo4jコミュニティ版を使用しています。私はneo4jで作成された13mノードを持っています。その後、CSVファイルから関係を作成します。プロセスが遅すぎる。ノード作成後にNeo4jで関係をインポートするのが難しい

LOAD CSV WITH HEADERS FROM "file:///re.CSV" AS csvLine 
WITH csvLine 
LIMIT 3 
MATCH(p:actor), (m:movie) 
WHERE m.mid=toInteger(csvLine.mid) 
    AND p.pid=toInteger(csvLine.pid) 
CREATE(p)-[a:Acted{ptime:csvLine.ptime}]->(m) 

Set 3 properties, created 3 relationships, completed after 128618 ms. 

私はこの問題に助けていただきありがとうございます。

+0

'r 'と' p'変数は何ですか?r.mid = toInteger(csvLine.mid)とp.pid = toInteger(csvLine.pid)で使用していますか?あなたの問い合わせが完了していないと私には思われる... –

+0

また、私たちとあなたのCSVファイル(またはそのサンプルライン)を共有してください。 –

+0

あなたは 'mid'プロパティでインデックスを使用していますか?返信の場合は –

答えて

1

参照した索引(CREATE INDEX ON :movie(name,mid) CREATE INDEX ON :actor(name,pid))は、索引付けされたすべてのプロパティーが参照用に存在する必要がある複合索引用です。

あなたの質問では、pid(pid ANDの名前ではない)と映画の中間(ANDの名前ではない)の俳優しか得られません。単一のプロパティーで索引付けを行う場合は、そのプロパティーでのみ索引を作成します。

また、クエリプラン(実行可能な場合はPROFILE、実行を終了するクエリのみ)を表示するようにクエリをEXPLAINします。インデックス検索が使用されているのか、それともラベルスキャンに落ちているのかのヒントが得られます。

関連する問題