neo4j-批量导入工具使用

从mysql中导出数据存储为csv文件

select * from table where options 
into outfile 'path' fields terminated by ',' optionally enclosed by '"'  lines terminated by '\r\n' ;

into outfile:指定导出的目录和文件名
fields terminated by:存储为文件的时候 定义字段间的分隔符
optionally enclosed by:定义包围字段的字符 (数值型字段无效,不会被添加包围字符)
lines terminated by:定义行间分隔符

示例:
select id,name,gender from students where id > 100 into outfile '/home/Desktop/test.csv' 
fields terminated by '\t' optionally enclosed by '"'  lines terminated by '\r\n'

neo4j 数据库读取csv文件

读取但不存入数据库

查看csv文件行数
load csv from "path" as line return count(line)
查看csv文件的前5行
load csv from "path" as line with line return line limit 5
查看csv文件带有头信息的前5行
load csv with headers from "path" as line with line return  line limit 5

上面语句的path可以是本地文件的路径,也可以是网上文件的url
如果把文件放在neo4j系统路径下的import文件夹内,就不需要指定路径,直接指定文件名即可

读取并存入数据库,需要用到create语句

load csv from '/home/Desktop/test.csv' as line create(:Student {name:line[1],gender:line[2]})

match(n) return n  查看所有创建的节点

导入数据量很大的csv文件使用periodic commit 减少内存开销

periodic commit 指示Neo4j在执行完一定行数后提交数据再继续
默认执行1000行,即每1000行提交一次

使用默认的1000行提交一次
using periodic commit 
load csv from '/home/Desktop/test.csv' as line create(:Student {name:line[1],gender:line[2]})

自定义执行次数
using periodic commit 800 
load csv from '/home/Desktop/test.csv' as line create(:Student {name:line[1],gender:line[2]})

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 关于Mongodb的全面总结 MongoDB的内部构造《MongoDB The Definitive Guide》...
    中v中阅读 32,098评论 2 89
  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 5,494评论 0 9
  • 把大杯托付给韩同学,心里有点不安。好像这是第一次他真正离开我,单独跟别的叔叔阿姨相处。希望他能够从韩叔叔那里学到一...
    qnybdhs阅读 177评论 0 0
  • 感觉这一个月我们都有了好多好多的变化...对 我又变了一次. 你呢!也步入了职场,开始慢慢理解各种事情.... 好...
    舒科舒科舒科阅读 217评论 1 0
  • 查找 string.find(s, pattern [, init [, plain]]) s : 需要进行查找的...
    SimanX阅读 21,544评论 0 3