我使用的是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对最短路径长度。有人可以帮忙吗?
答案 0 :(得分:1)
要尝试的事情
您是否在冷缓存上运行查询?尝试运行两次以验证。
检查是否有足够的内存。如果图的相关部分不适合缓存,则最短路径查询会受到重创。
我注意到你正在寻找一条无向路径。如果可能,您可以通过指定方向来帮助算法。