执行计划与查询调优

Cypher® 查询会依据特定的执行计划来运行。执行计划由一棵二叉运算符树构成,包含查询逐步执行的相关信息,并且可能会因所使用的运行时不同而有所差异。除了选择不同的运行时之外,还有许多其他方式可以对查询进行调优。

关于这些主题的更多信息可在以下章节中找到

关于 PROFILEEXPLAIN 的说明

本节中的查询通常会在前面加上 PROFILEEXPLAIN。两者都会生成执行计划,但存在重要区别。

EXPLAIN

如果只想查看执行计划而不实际运行查询,请在 Cypher 语句前加上 EXPLAIN。该语句始终返回空结果,并且不会对数据库产生任何更改。

PROFILE

如果想运行查询并了解哪些运算符消耗了大部分工作,请使用 PROFILE。这会执行你的查询,并记录每个运算符通过了多少行数据以及每个运算符需要与存储层交互多少次以检索所需数据。请注意,对查询进行分析会消耗更多资源,因此除非你正在积极调试查询,否则不必使用 PROFILE。