赞
踩
Neo4j提供Load CSV命令帮助我们将CSV数据文件导入到Neo4j中。
//查看csv文件行数 LOAD CSV FROM “file-url” AS line RETURN count(*) //查看CSV文件前5行 LOAD CSV FROM “file-url” AS line WITH line RETURN line LIMIT 5; //查看CSV文件,并带有头部数据 LOAD CSV WITH HEADERS FROM “file-url” AS line WITH line RETURN line LIMIT 5; |
上述例子仅仅是用来读取CSV文件,它并没有将数据存入到数据库中。LOAD CSV FROM “file-url” AS line,这条指令就是将指定路径下的CSV文件读取出来,其中“file-url”就是文件的地址,可以是本地文件路径也可以是网址。
读取CSV文件,要导入Neo4j数据库中需要使用相应的create语句。下例可以读取网址指定的movie.csv文件并批量创建节点Movie,每个节点的title、released和tagline属性由导入的CSV文件的每行指定。
LOAD CSV FROM 'http://we-yun.com/neo4jguide/movie.csv' AS line CREATE (:Movie {title:line[0], released:line[1], tagline:line[2]}) |
语句添加了WITH HEARDERS子句,它的功能就是在导入CSV时附带上头部,头部由line.title等指定。
LOAD CSV WITH HEADERS FROM 'http://we-yun.com/neo4jguide/movie.csv' AS line CREATE(:Movie{title:line.title,released:line.released, tagline:line.tagline}) |
如果要导入包含大量数据的CSV文件,则可以使用PERODIC COMMIT子句。使用PERODIC COMMIT指示Neo4j在执行完一定行数后提交数据再继续,这样减少了内存开销。使用PERODIC COMMIT默认值为1000行,因此数据将每一千行提交一次。
要使用PERODIC COMMIT,只需在LOAD CSV语句之前插入USING PERIODIC COMMIT语句。
USING PERIODIC COMMIT LOAD CSV WITH HEADERS FROM 'http://we-yun.com/neo4jguide/movie.csv' AS line CREATE(:Movie{title:line.title,released:line.released, tagline:line.tagline}) |
参考文献
《Neo4j权威指南》
知识图谱技术交流QQ群:812087709。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。