0

假设我想实现一个新的索引结构(例如,BITMAT),它将提高某些查询的效率(以路径查询为例BITMAT)。如何扩展Neo4j以使具有指定查询模式的每个查询都使用我的新索引而不是 Neo4j 的本机索引?

4

1 回答 1

1

你可以实现一个新的 IndexProvider 挂钩到正常的 Neo4j 索引系统。然后它会自动暴露给 Cypher。您可以在此 SpatialIndexProvider 中看到一个示例,将子图查询投影到索引查找中并针对它运行 Cypher 查询:

https://github.com/neo4j/spatial/blob/master/src/main/java/org/neo4j/gis/spatial/indexprovider/LayerNodeIndex.java

使用 Cypher 进行测试:

https://github.com/neo4j/spatial/blob/master/src/test/java/org/neo4j/gis/spatial/IndexProviderTest.java#L141

于 2012-12-21T11:17:22.783 回答