【问题标题】:Fail to import into Neo4J with batch-import批量导入 Neo4J 失败
【发布时间】:2014-03-20 04:12:26
【问题描述】:

我正在尝试使用batch-import 将 SQLite3 数据库导入 Neo4J。作为一个 Neo4J 菜鸟,我关注了 Max De Marzi 的帖子:Batch Importer – Part 2。

我收到此错误:

# java -server -Xmx2G -jar /opt/batch-import/target/batch-import-jar-with-dependencies.jar /var/lib/neo4j/data/graph.db nodes.csv relations.csv 
Usage: Importer data/dir nodes.csv relationships.csv [node_index node-index-name fulltext|exact nodes_index.csv rel_index rel-index-name fulltext|exact rels_index.csv ....]
Using: Importer /var/lib/neo4j/data/graph.db nodes.csv relations.csv

Using Existing Configuration File
..
Importing 271544 Nodes took 2 seconds 

Total import time: 4 seconds 
Exception in thread "main" org.neo4j.graphdb.NotFoundException: id=271565
    at org.neo4j.unsafe.batchinsert.BatchInserterImpl.getNodeRecord(BatchInserterImpl.java:917)
    at org.neo4j.unsafe.batchinsert.BatchInserterImpl.createRelationship(BatchInserterImpl.java:471)
    at org.neo4j.batchimport.Importer.importRelationships(Importer.java:136)
    at org.neo4j.batchimport.Importer.doImport(Importer.java:214)
    at org.neo4j.batchimport.Importer.main(Importer.java:78)

但节点存在:

$ grep ^271565 nodes.csv 
271565  'la Callas' 'n_term'    0.0

还有其他人遇到过这个问题吗? 谢谢。

【问题讨论】:

    标签: neo4j


    【解决方案1】:

    你能显示你的文件头吗?

    如您所见,您只导入了271544 节点。所以不可能有node-id为271565的节点。

    关系文件中的 id 是指节点文件中的行号,而不是您自己的“id”列中的行号(它怎么会知道)。

    您在这里唯一能做的就是使用id:id,它是一种特殊类型,会强制neo4j-id 对应于您提供的id。并在关系文件中使用start:id、end:id。

    【讨论】:

      【解决方案2】:

      您可以尝试另一种方法将批量数据导入 neo4j。

      首先将您的数据库转换为 csv 文件并将其导入 Gephi - 一种图形可视化工具。然后通过使用 Gephi 插件来支持 neo4j 数据库,您应该能够将数据库(从 Gephi)导出为 neo4j 格式。

      最后只需将导出的文件复制到相应的 neo4j 目录中即可。

      为了将数据库导入 Gephi,您需要两个 csv 文件 - 一个包含所有节点,另一个包含所有关系。跟随本教程:http://blog.neo4j.org/2013/01/fun-with-beer-and-graphs.html

      从这里获取 Gephi:https://gephi.org/

      从这里获取插件:https://marketplace.gephi.org/plugin/neo4j-graph-database-support/

      希望这会有所帮助。

      【讨论】:

        【解决方案3】:

        你能提供你的输入文件来测试吗?你用的是什么分支?

        我发现这里报告了类似的错误:https://github.com/jexp/batch-import/issues/59

        【讨论】:

        • 我使用的是 2.0.0 版。我的 csv 文件太大(9.5Mo、90Mo)无法在此处发布。我将尝试创建一个最小的示例。
        猜你喜欢
        • 1970-01-01
        • 2017-06-14
        • 1970-01-01
        • 2017-08-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多