您的位置:首页 > 其它

windows下使用neo4j web管理端导入CSV

2017-03-27 13:59 295 查看
多种方式导入效率对比 点击打开链接

数据导入精灵,可导入EXCEL、Mysql点击打开链接

欢迎加群:547190638

本文使用的是windows下的neo4j broswer,在导入数据之前,需要将EXCEL另存为CSV,如果有多个sheet,则需要分开单独存储

文档地址,3.3.14节:点击打开链接

语句:

USING PERIODIC COMMIT 300 LOAD CSV WITH HEADERS FROM "file:///test.csv" AS line 
MERGE (a:airplane{name:line.name,type:line.type,id:line.id})

本地数据文件放在XXX\Neo4j\graph.db\import文件夹内,远程数据文件可以使用文件URL

在这里本人就是在import文件夹里放了一个test.csv文件,然后指定file:///test.csv即可访问该文件

可变参数解释:

1、USING PERIODIC COMMIT 300

使用自动提交,每满300条提交一次,防止内存溢出
2、WITH HEADERS

从文件中读取第一行作为参数名,只有在使用了该参数后,才可以使用line.name这样的表示方式,否则需使用line[0]的表示方式

上面的语句可修改为

USING PERIODIC COMMIT 10 
LOAD CSV FROM "file:///test.csv" AS line
create (a:airplane{name:line[0],id:line[1],type:line[2]})

3、AS line

为每行数据重命名

4、MERGE

用merge比用create好一点,可以防止数据重复

可能遇到的问题:

1、导入后中文乱码

因为neo4j是utf-8的,而CSV默认保存是ANSI的,需要用记事本另存为成UTF-8的

2、如何导入关系

在neo4j中,虽然有一个自增的id属性,但是要想使用它还是很麻烦的,尤其是在web管理端

因此在使用CSV创建关系时,需要我们自己指定或添加一个属性来作为“主键”,在创建关系时根据该属性来获取节点,并添加关系

USING PERIODIC COMMIT 10 
LOAD CSV FROM "file:///test.csv" AS line 
match (from:airplane{id:line[0]),(to:position{id:[1]})
merge (from)-[r:fly{miles:line[2],time:line[3],price:line[4]}]-(to)
return r
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  neo4j cypher 数据导入
相关文章推荐