0

我将查看 Neo4j 2.0 附带的新的自动索引功能。它们在这里描述:http: //docs.neo4j.org/chunked/2.0.0-M03/tutorials-java-embedded-new-index.html

现在必须在某一点创建自动索引。获取索引的旧方法只是“indexManager.forNodes()”,如果存在则返回索引,如果不存在则创建。使用自动索引,我们只需通过“schema.indexFor()...”创建一次索引,然后就可以完成它。

我的问题是,我最好将索引创建放在哪里?在文档示例中,它们有一个 main 方法。但我正在使用 ServerPlugin。如果索引尚不存在,我想在启动时创建一次。但是我在哪里可以做到这一点?以及如何检查索引是否已经存在?我可以获得标签的所有 IndexDefinition。但是由于 IndexDefinition 可能取决于标签和任意属性,因此我必须遍历特定标签的所有 IndexDefinition 并检查具有正确属性的标签是否存在。

我当然可以简单地做我刚刚写的,但与旧的索引处理相比似乎有点麻烦,旧的索引处理会自动检查请求的索引是否存在并创建它,如果不存在。所以我想知道我是否只是错过了处理新索引的一些关键点。

谢谢!

4

1 回答 1

0

我在这里收到了 Neo4j 开发人员的回复:http: //docs.neo4j.org/chunked/2.0.0-M03/tutorials-java-embedded-new-index.html

例如,他建议在 neo4j 启动脚本中创建自动索引。我还看到有人已经希望使用唯一索引(这将是一个很棒的功能!)。这将简化索引的创建,但最终这似乎是数据库设置的一部分。

于 2013-07-25T06:04:00.387 回答