如何在neo4j fast中创建关系

如何在neo4j fast中创建关系,neo4j,Neo4j,今天,我在neo4j中创建了591113个节点。然后,我希望使用以下代码在它们上创建关系: MATCH (A), (B) WHERE A.value = B.value CREATE (A)-[:SameValue]->(B) 但这花了我几个小时(我必须在它完成之前终止它)。 我想问一下如何在大量节点上快速创建关系?您可以尝试: MATCH (a:UseLabels) WITH a MATCH (b:UseLabels{value:a.value}) CREATE (a)-[:SameV

今天,我在neo4j中创建了591113个节点。然后,我希望使用以下代码在它们上创建关系:

MATCH (A), (B)
WHERE A.value = B.value
CREATE (A)-[:SameValue]->(B)
但这花了我几个小时(我必须在它完成之前终止它)。 我想问一下如何在大量节点上快速创建关系?

您可以尝试:

MATCH (a:UseLabels)
WITH a
MATCH (b:UseLabels{value:a.value})
CREATE (a)-[:SameValue]->(b)
它只匹配匹配并避免笛卡尔积的值。

您可以尝试:

MATCH (a:UseLabels)
WITH a
MATCH (b:UseLabels{value:a.value})
CREATE (a)-[:SameValue]->(b)

它只匹配匹配并避免笛卡尔积的值。

您是否在
属性上有索引

这也可能会更好(尽管如此,索引仍然很重要):


您是否有
属性的索引

这也可能会更好(尽管如此,索引仍然很重要):


比我快19秒!;)不过,您提到了索引,这本可以为您节省19秒的时间。不过我有标签。你可以投我一票!非常感谢。我试过这种方法。它确实工作得更快。但是节点(a)将链接回自身。如何避免这种情况?我尝试了`用一个匹配(b:Labels{value:a.value})匹配(a:Labels),其中b.othervalue a.othervalue创建(a)-[r]->(b)`它再次减速。比我快19秒!;)不过,您提到了索引,这本可以为您节省19秒的时间。不过我有标签。你可以投我一票!非常感谢。我试过这种方法。它确实工作得更快。但是节点(a)将链接回自身。如何避免这种情况?我尝试了`将(a:Labels)与匹配(b:Labels{value:a.value})进行匹配,其中b.othervalue a.othervalue创建(a)-[r]->(b)`它再次变慢。我发现在a.value上创建索引需要很长时间(事实上它使我的neo4j崩溃)。我发现在a.value上创建索引需要很长时间(事实上它使我的neo4j崩溃)。