我有一个简单的节点User
,它具有具有唯一约束设置的属性UserId
。
开始分析我的查询,并注意到每次我通过UserId
NodeByLabelScan 而不是 NodeUniqueIndexSeek 对User
节点执行匹配时。
我在下面尝试了最简单的匹配。
match (u:User {UserId:"id"}) return u
和索引扫描不起作用。
如果我明确指定索引,一切正常。
match (u:User {UserId:"id"}) using index u:User(UserId) return u
谁能澄清为什么会发生这种情况。
如果您拥有一定数量的相同标签的节点,Cypher 将默认使用 NodeUniqueIndexSeek
,如果我记得的话,在 2.2.5 版本中,它是从 703 个节点开始触发的。
在此独立级别下,使用索引或标签索引对查询的性能没有改进。