【问题标题】:neo4j-import with node_auto_indexing使用 node_auto_indexing 导入 neo4j
【发布时间】:2015-04-02 17:30:48
【问题描述】:

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

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

我读到使用 Lucene 查询会更有效率。但是使用 Neo4-import,创建节点时不需要 node_auto_indexing。

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

谢谢,

爬行动物

【问题讨论】:

    标签: regex lucene neo4j


    【解决方案1】:

    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 的基本原理是具有合理大小的事务。

    【讨论】:

      猜你喜欢
      • 2016-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多