我已经看到了一个主题(了解Neo4j Cypher Profile关键字和执行计划),其中提到了profile关键字.
我无法在Neo4j 2.0.0RC1社区中使用它.
彼得写道,它没有完全实现.
会不会得到支持?
我的意思是,在调整查询时观察计划的变化会很有趣......
Mic*_*ger 19
您仍然可以找到neo4j shell,您可以在其中运行该profile
命令.
通过启动连接到正在运行的服务器 bin/neo4j-shell
或者通过切换到左侧"(i)"信息菜单中的旧web-ui并选择最下面的链接"webadmin" - > http://localhost:7474/webadmin
分析信息将在以后更容易阅读和理解时添加到浏览器中.
jja*_*erg 17
从Neo4j 2.2开始,还有其他的分析工具.一些仅通过neo4j-shell或REST端点可用的功能现在也可以在Neo4j浏览器中使用,并且一些功能是全新的.
现在,您可以PROFILE
直接在Neo4j-browser repl中使用带有cypher查询的命令来执行查询并查看执行计划的可视化.
PROFILE
MATCH (n:Peter {foo: 'Paul'})
RETURN n.bar, ID(n)
-------------
n.bar ID(n)
Mary 951
Run Code Online (Sandbox Code Playgroud)
此外,您现在可以检查查询计划而无需实际执行它,例如验证将更改数据库的查询.使用EXPLAIN
命令前置的命令执行此操作.请参见15.2如何配置查询?来自文档.
EXPLAIN
MATCH (n:Peter {foo: 'Paul'})
SET n.foo = 'Mary', n.bar = 'Paul'
RETURN n.foo, ID(n)
------------------------------------------
// Nothing returned, query is not executed
Run Code Online (Sandbox Code Playgroud)
相关的新功能还包括新的"基于成本"的查询计划程序,以及强制为所有查询或任何特定查询使用"基于成本"或"基于规则"的查询计划程序的功能.该文档指出,并非所有查询都可以由"基于成本"的查询计划程序解决,在这种情况下,将忽略该设置并使用"基于规则"的计划程序.请参见15.1如何执行查询?
要强制为所有查询使用查询计划程序,请query.planner.version
在conf/neo4j.properties
(Neo4j服务器)中设置配置设置,或者通过调用对象.setConfig()
上的方法GraphDatabaseService
(Neo4j embedded).将其设置为COST
或RULE
,并决定使用哪个查询规划器返回Neo4j,将其设置为default
(或完全删除设置).请参见24.5配置设置,使用配置设置启动嵌入式数据库.
要强制为特定查询使用任一查询规划器,请在CYPHER planner=cost
或前面添加查询CYPHER planner=rule
.请参见15.1如何执行查询?
CYPHER planner=cost
MATCH (n:Peter {foo: 'Paul'})
RETURN n.bar, ID(n)
Run Code Online (Sandbox Code Playgroud)
你可以PROFILE
或者EXPLAIN
有任何查询规划者的查询,看看他们是如何实现你的查询任何差异.
有关解释执行计划的帮助,请参阅文档的相关章节,16.执行计划.
归档时间: |
|
查看次数: |
6118 次 |
最近记录: |