使用 node_auto_indexing 导入 neo4j

neo4j-import with node_auto_indexing

对于一个项目,我需要导入500万个节点和1500万个关系。 我尝试过批量导入,但速度很慢,所以我使用了 Neo4j 2.2 中的新工具 'Neo4j-import'。我们生成一些具体的 .csv 并使用 'neo4j-import'。速度非常快,整个数据库创建时间为100万。

但问题是我需要对 属性 进行正则表达式查询(查找只有他名字开头的电影)。平均响应时间在 2.5 到 4 秒之间,这是巨大的。

我读到,使用 Lucene 查询会更有效率。但是使用 Neo4-import,创建的节点没有 node_auto_indexing.

有没有办法使用 Neo4j-import 并具有 node_auto_indexing 以便使用 Lucene 查询?

谢谢,

爬虫类

neo4j-import 不填充自动索引。为此,您需要在要自动索引的节点上触发写入操作。假设您的节点带有 :Person 标签和 name 属性.

neo4j.properties中为name配置节点自动索引并重启Neo4j。

要填充自动索引 运行 像这样的密码语句:

MATCH (n:Person) 
WHERE NOT HAS(n.migrated)
SET n.name = n.name, n.migrated=true
RETURN count(n) LIMIT 50000

重新运行此语句,直到报告的计数为 0。LIMIT 的基本原理是拥有合理大小的事务。