0

我试图找出最有效的方法来找到一个节点与其他节点列表之间的分离程度。例如,我有一个节点 1 和一个节点列表 (2, 3, 4, 5, ... 15, 16)。我想找到 1 和 2、1 和 3、1 和 4 等之间最短路径的长度。我尝试了以下密码查询:

密码 1.7 开始 s=node(1), d=node(2,3,4,5,6,7,8,9,10,11,12,13,14,15,16) 匹配 p=s-[ *1..3]-d 返回 d, min(length(p))

在电影评级数据库(这里描述,它有 9,962 个节点和 1,012,657 个关系)。

我有一个内存不足的异常。我试图将节点列表限制为 (2, 3) 并得到相同的错误。

我想知道是否有一种方法可以在大型数据库中更有效地完成此类查询。非常感谢您的帮助

4

1 回答 1

1

我认为您可以尝试 ShortestPath,请参阅http://docs.neo4j.org/chunked/snapshot/query-match.html#match-shortest-path,这可能更有效?

于 2012-04-12T12:41:00.877 回答