mysql数据导入neo4j_如何将CSV / MySQL数据初始批量导入neo4j数据库

基于建议

in the git repo.使用Michael Hunger的

batch-import可以从一个.csv文件导入多个节点类型.

引用迈克尔:

Just put them all into one nodes file, you can have any attribute not

having a value in a certain row, it will then just be skipped.

所以我使用的一般方法是:

将所有节点表组合成一个名为nodes的新表:

>使用自动递增newID字段和类型字段创建新表节点. type字段将记录节点数据来自哪个表

>从3个节点表中添加允许空值的所有可能的列名称.

> INSERT INTO节点来自Person,然后是Organism,然后是Story,除了将类型字段设置为人物,有机体或故事.将任何不相关的字段留空.

在另一个新表中,rels基于sql JOIN将新创建的newID索引添加到Links表:

INSERT INTO rels

SELECT

n1.newID AS fromNodeID,

n2.newID AS toNodeID,

L.LinkType,

L.ID

FROM

Links L

LEFT JOIN

nodes n1

ON

L.fromID = n1.ID

AND

L.fromType = n1.type

LEFT JOIN

nodes n2

ON

L.toID = n2.ID

AND

L.toType = n2.type;

然后导出这两个新表节点并将其作为Tab分隔的.csv文件,并将其与批量导入一起使用:

$java -server -Xmx4G -jar target/batch-import-jar-with-dependencies.jar target/graph.db nodes.csv rels.csv

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值