我运行 graph.run(SHOW INDEXES;) 时看到查找索引为空的原因是什么?

问题描述 投票:0回答:1

我对使用 neo4j 还比较陌生。我已使用 py2neo 库连接到数据库,并使用 faker 库填充数据库,为 Person 和 Address 创建节点,每个节点都附加了属性。我对创建索引并测试不同索引的性能感兴趣。这是我创建的两个索引

`# Step 3: Create Indexes for Persons and Addresses
graph.run(" CREATE INDEX IF NOT EXISTS FOR (p:Person) ON (p.name, p.dob, p.email, p.gender)")
graph.run("CREATE INDEX IF NOT EXISTS FOR (a:Address) ON (a.address, a.postcode, a.country)")'

我创建了一些索引并使用了命令

`graph.run("SHOW INDEXES;")`

Output

我原本期望显示 2 个索引,但返回了 3 个索引。最后一个是查找类型,具有一些空属性。所附图片显示了输出,为什么会出现该索引?谢谢。

我原以为只有 2 个人会回来,所以我想这也许是我缺乏理解?我已经开始阅读有关索引的 Neo4j 文档,但我仍然不确定。任何帮助,将不胜感激。谢谢!

python neo4j py2neo
1个回答
0
投票

您看到的附加索引可能是 Neo4j 自动创建的供内部使用。 Neo4j 可能会创建额外的索引来优化其内部操作,并且这些索引可能不是由用户直接创建的。在您的情况下,显示空属性的“查找”索引可能是这些内部索引之一。

为了确认该索引是否确实是Neo4j创建的内部索引,可以尝试直接查询系统目录。例如,您可以使用以下查询列出数据库中的所有索引:

CALL db.indexes() YIELD description
RETURN description
© www.soinside.com 2019 - 2024. All rights reserved.