密码查询速度低

时间:2013-04-11 14:38:05

标签: neo4j cypher

我使用查询

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

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

2 个答案:

答案 0 :(得分:1)

查询时间与搜索到的图形量成正比。您的查询允许深度搜索,最深可达200​​.如果a。和b。非常接近,你不会搜索图表的大部分,查询将返回非常快。如果一个。和b。由200条边分开,你会搜索一大堆图形(也许是整个图形?),对于大图形来说会慢得多。

答案 1 :(得分:0)

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