工具

neo4j 5.3 Desktop    jdk 17

下载安装:

neo4j 地址:Neo4j Desktop Download | Free Graph Database Download

jdk 地址:Java Downloads | Oracle 中国

Desktop下载需要填注册信息 

neo4j使用

数据处理:..

文件放在这个import文件夹下,点击弹出文件夹

实体文件:entity.csv

关系文件:roles.csv

将csv文件导入neo4j

创建实体

LOAD CSV FROM "file:///entity.csv" AS line
CREATE (a:entity{Id: line[0], name: line[1], type: line[2]});

创建关系

LOAD CSV FROM 'file:///roles.csv' AS row
MATCH (startNode:entity {Id: row[0]})
MATCH (endNode:entity {Id: row[1]})
MERGE (startNode)-[r:RELATIONSHIP_TYPE {name: row[2]}]->(endNode);

学习的一些链接:图数据库查询语言Cypher - 知乎 (zhihu.com)

导入数据:(复制来的)

neo4j-import导入速度快,但是要求是空库,导入时要停止neo4j,也就是脱机导入,而且你要提前处理好数据,数据最好不要有重复,如果有重复,可以导入时跳过,然后根据bad.log来查看或者修正这部分数据。

batch-import可以增量导入,但是要求导入时停止neo4j数据库(脱机导入),而且增量更新的数据不会和库里存在的数据对比,所以要求数据全是新的,否则会出现重复数据

load csv比较通用,而且可以在neo4j数据库运行时导入,但是导入速度相对较慢,要提前整理好数据,而且不能动态创建 Label RelationShip

apoc挺好用的,可以动态创建RelationShip,但是不能动态创建Label (动态创建Label只能在程序里通过拼接字符串的方法实现)

学习笔记:

更多推荐