。本文目录
删除数据库中的数据
用load csv方法导入数据
2.1 导入点的数据
2.2 创建索引
2.3 导入关系数据
2.4 创建好的关联图
用neo4j-admin import方法导入数据
3.1 删除graph.db目录下的所有文件
3.2 停止neo4j
3.3 导入数据
3.4 启动neo4j查看数据
一、删除数据库中的数据

删除数据库中的数据,我常用以下两种方法:
#删除数据方法一match (n) detach delete n#删除数据方法二MATCH (n)OPTIONAL MATCH (n)-[r]-()DELETE n,r
二、用load csv方法导入数据

如果想要增量数据同步加载,又不想暂停数据库服务,可以使用load csv向neo4j中导入数据。
1 导入点的数据

如果数据中有中文,要把csv数据的编码设置成utf-8,不然导入到neo4j中去中文会变成乱码。
我一般用Notepad++打开要导入的数据,把数据编码转为UTF-8格式,在neo4j中就可以正常显示中文了。

在neo4j中运行如下语句:
using periodic commit 10000 load csv with headers from "file:/node_gzh.csv" as line with line create (:gzh {item:line.item, trans_amount_sum:line.trans_amount_sum, trans_cnt:line.trans_cnt, type:line.type});说明:

2 创建索引
CREATE INDEX ON :gzh(item)
using periodic commit 10000 load csv with headers from "file:/node_rela_gzh.csv" as line match (from:gzh {item: line.item_l}),(to:gzh {item:line.item_r}) merge (from)-[c:gzh{relation:line.relation}]-(to)
说明:

4 创建好的关联图
导入好点和关系数据后,在浏览器中打开neo4j,即可看到导好的数据。由于数据样本较多,我选取了其中一簇(43个点之间的关系),作为展示。

三、用neo4j-admin import方法导入数据

如果数据上亿,用load csv方法导入数据较慢,可以用neo4j-admin import方法导入数据。
我用delete语句删除所有点和关系,尝试用import方法导入数据时报错。查了下发现Neo4j根目录下data/databases/graph.db 中不能有文件,即初始化导入时要求数据库为空。
3 导入数据
在Neo4j的根目录neo4j-community-3.5.5文件夹中打开cmd,运行如下语句:
.\bin\neo4j-admin import --mode csv --database graph.db --nodes:mer "D:/neo4j/neo4j-community-3.5.5/import/node_gzh_1.csv" --relationships:ACTED_IN "D:/neo4j/neo4j-community-3.5.5/import/node_rela_gzh_1.csv" --ignore-extra-columns=true --ignore-missing-nodes=true --ignore-duplicate-nodes=true说明:
注意:保存点的csv必须包含ID域(:ID),用来表示节点的id信息。保存关系的csv必须包含(:START_ID)(:END_ID),分别表示关系的开始节点id和结束节点id。
为了大家理解得更透彻,下面展示点的前几行和关系的前几行。
点的前几行:



注:如需本文导入的所有原数据可到公众号中回复“neo4j导入数据”,即可免费获取。

其它方法比如create(速度太慢慎用)、Batch-import、Apoc等,感兴趣的可以自己尝试一下。
参考文献
https://www.cnblogs.com/jpfss/p/11395858.htmlhttps://blog.csdn.net/zfqbd/article/details/78808678https://blog.csdn.net/u013946356/article/details/82629014https://blog.csdn.net/shuibuzhaodeshiren/article/details/88559383https://zhuanlan.zhihu.com/p/93746655?utm_source=wechat_session&utm_medium=social&utm_oi=1090367802518536192&utm_content=first
往期回顾:


扫一扫关注我
19967879837
投稿微信号、手机
原文作者:阿黎逸阳的代码;如有侵权,请联系管理员删除。