Neo4J 在海得拉巴"MATCH (n:City{name : " cypher 查询花费了太多时间"})-[:CONTAINS]->(p:BusinessDetails) return p"



我使用的是neo4j社区版本,当我使用密码查询时,我有1个"城市"节点,以及大约5000个与从"城市"到"商业详细信息"的实现"CONTAINS"连接的"商业详细信息"节点

MATCH (n:City{name : "hyderabad"})-[:CONTAINS]->(p:BusinessDetails) return p

获取结果大约需要8秒。如何对此进行优化?为什么要花这么多时间?我对neo4j真的很陌生。

首先要确保在城市名称上添加了索引

CREATE INDEX ON :City(name)

Next始终在单独的匹配语句中匹配筛选

MATCH (n:City{name : "hyderabad"})
MATCH n-[:CONTAINS]->(p:BusinessDetails)
RETURN p

这会稍微提高你的表现。不管怎样,这可能是配置问题或硬件问题,因为与我使用的相比,你谈论的数字非常小,但我仍然有更好的性能。

最新更新