3

我一直在尝试将一个相对较大的数据集导入 neo4j ......大约有 5000 万个具有关系的节点。

我首先通过 py2neo -> 尝试了 Cypher,它确实有效,但如果您需要使用 CREATE UNIQUE 或 MERGE,它会变得非常慢。

我现在正在研究其他批量导入方法,我想知道是否有关于这些方法中哪种方法最适合一般工作流程和速度的建议:

  • Neo4j 文档提到了一个批处理插入工具,它看起来是 Java 并且是 Neo4j 发行版的一部分;
  • github 上还有 Michael Hunger 的批处理插入器,我不确定这与发行版中包含的那个有什么相似或不同;
  • 然后还有我目前正在测试的load2neo ;
  • 然后是作为 Neo v2 的 CYPHER 一部分的CSV功能的负载,尽管我不确定它是否主要是一个便利因素,以及它的性能是否类似于通过 Cypher 批量执行 Cypher 查询,例如 40 000交易。

对于这些选项之间的功能、工作流程和速度差异的任何评论,我将不胜感激。

4

1 回答 1

1

如果您可以使用最新版本的 Neo4j,推荐的方法是在 Cypher 中使用新的 LOAD CSV 语句:http: //docs.neo4j.org/chunked/stable/cypherdoc-importing-csv-files-with-cypher.html

于 2014-06-11T01:57:16.840 回答