我将查看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可能依赖于标签和任意属性,因此我必须遍历所有IndexDefinitions以获取特定标签,并检查具有正确属性的那个是否存在。
我当然可以简单地完成我刚刚编写的内容,但与旧的索引处理相比,它似乎有点麻烦,它会自动检查所请求的索引是否存在并创建它,如果不存在的话。所以我想知道我是否只是错过了处理新指数的一些关键点。
谢谢!
答案 0 :(得分:0)
我在这里得到了一个Neo4j开发者的回复:http://docs.neo4j.org/chunked/2.0.0-M03/tutorials-java-embedded-new-index.html
他建议在neo4j启动脚本中创建自动索引。我还看到有人已经希望获得独特的索引(这将是一个很棒的功能!)。这将简化索引创建,但最终现在这是数据库设置的一部分,似乎。