用于查找节点集之间的路径的密码查询需要很长时间

sbh*_*att 3 neo4j graph-databases cypher

我有一个图表,两个节点之间可以存在多条(超过300条)路径.

我想找到特定节点和节点集之间的路径.我正在使用以下查询来完成此任务.

// 2,153和485是nodeid.

START startnode=node(2), group = node(153 ,485)
MATCH p=startnode-[:C0038969primrel*1..4]->group
RETURN DISTINCT p
Run Code Online (Sandbox Code Playgroud)
  • C0038969primrel是一种特定的关系类型.我想遍历仅与特定关系类型连接的节点.

如果我将深度从1..4更改为1..3然后返回结果,但是对于1..4,它不会返回.

  • 我正在使用嵌入式数据库.我应该在服务器上安装数据库并增加maxmemory吗?那会有帮助吗?

  • 我应该有不同类型的查询来实现相同的目标吗?

我因此而陷入困境.非常感谢,感谢您的帮助.

Mic*_*ger 8

使用shortestPathallShortestPaths

START startnode=node(2), group = node(153 ,485)
MATCH p=allShortestPaths(startnode-[:C0038969primrel*..4]->group)
RETURN p
Run Code Online (Sandbox Code Playgroud)