0

我使用查询

"START a=node("+str(node1)+"),
       b =node("+str(node2)+") 
MATCH p=shortestPath(a-[:cooperate*..200]-b) 
RETURN length(p)"

查看 a 和 b 之间的路径。我有很多节点,所以当我运行查询时,有时它运行得很快,有时运行得很慢。我使用 neo4j 1.9 社区。任何人都可以帮忙吗?

4

2 回答 2

1

查询时间与搜索的图表数量成正比。您的查询允许非常深入的搜索,深度可达 200。如果 a。和 b。非常接近,您不会搜索太多图形,并且查询将很快返回。如果一个。和 b。被 200 条边分开,您将搜索一个非常大的图(也许是整个图?),对于一个大图来说这会慢得多。

于 2013-04-11T16:18:02.853 回答
0

两个查询之间的图形是否发生变化,这两个节点是否可能在查询之间相对于彼此位于不同的位置?例如,如果您生成一些随机数据来填充图表?

于 2013-04-11T18:22:05.047 回答