我很好奇Neo4j是如何确定在接收查询时使用的遍历顺序,即BFS或DFS的。根据查询描述,它如何确定BFS或DFS遍历顺序是有益的。我怀疑这会发生在查询评估阶段,但我没有看到任何文档。任何理解这一点的建议或链接都将非常有用。感谢
您可以使用EXPLAIN查看如何处理查询的操作。
它不是直接的BFS或DFS,但可以有多个起点等。
通常,链接的扩展(全部)操作是DFS。但也有双向ExpandInto和几种类型的Joins和Apply。
请参阅:http://neo4j.com/docs/stable/execution-plans.html