cypher查询最短路径太慢了

时间:2013-04-12 06:02:38

标签: neo4j shortest-path cypher

我使用的是Neo4j1.9m05。我想计算每对节点之间的最短路径。现在我使用这个Cypher查询:

START a=node(1), b=node(1-1000) MATCH p=shortestPath(a-[:cooperate*..50]-b) RETURN length(p)

1-1000只意味着有1000个节点。这个简单的查询花费超过2分钟,这太慢了。我只想查询1000对最短路径长度。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

要尝试的事情

您是否在冷缓存上运行查询?尝试运行两次以验证。

检查是否有足够的内存。如果图的相关部分不适合缓存,则最短路径查询会受到重创。

我注意到你正在寻找一条无向路径。如果可能,您可以通过指定方向来帮助算法。