neo4j import tool
来源:互联网 发布:美工包括哪些 编辑:程序博客网 时间:2024/06/15 03:52
Use the import tool
这篇教程提供了使用import tool的详细案例
当使用csv文件载入数据库时,为了能够创建节点之间的关系,每一个节点必须有一个独一无二的标识,节点ID。
关系通过连接两个节点之间的ID被创建,在下面的例子中,节点标识符作为属性存储在节点上。 节点标识符稍后可能对其他系统的交叉引用,可追溯性等感兴趣,但它们不是强制性的。
如果您不希望标识符在完成导入后保留,则不要在:ID字段中指定属性名称。
Example 1
下面的例子中,我们使用包含电影(movies),演员(actors)和角色(roles).除非特殊说明,下面的例子假设数据库的名称是graph.db,
所有的文件位于neo4j的import目录下。注意:如果想一个接一个的运行Example,必须要先删掉已经存在的数据库。
movies.csv 格式如下:
movieId:ID,title,year:int,:LABELtt0133093,"The Matrix",1999,Moviett0234215,"The Matrix Reloaded",2003,Movie;Sequeltt0242653,"The Matrix Revolutions",2003,Movie;Sequel
每部电影都有一个id,用于从其他数据源中引用它。此外,每部电影都有一个标题和一个年份。 除了这些属性,我们还添加节点标签Movie和Sequel(续集),一个有节点两个标签label
actors.csv :
personId:ID,name,:LABELkeanu,"Keanu Reeves",Actorlaurence,"Laurence Fishburne",Actorcarrieanne,"Carrie-Anne Moss",Actor
ID是名字的简写,属性name,所有的标签都是Actor
roles.csv :
:START_ID,role,:END_ID,:TYPEkeanu,"Neo",tt0133093,ACTED_INkeanu,"Neo",tt0234215,ACTED_INkeanu,"Neo",tt0242653,ACTED_INlaurence,"Morpheus",tt0133093,ACTED_INlaurence,"Morpheus",tt0234215,ACTED_INlaurence,"Morpheus",tt0242653,ACTED_INcarrieanne,"Trinity",tt0133093,ACTED_INcarrieanne,"Trinity",tt0234215,ACTED_INcarrieanne,"Trinity",tt0242653,ACTED_IN
为了创建节点之间的关系,我们使用actors.csv和movies.csv中为START_ID和END_ID字段定义的ID。 我们还需要为:TYPE字段提供关系类型(在这种情况下为ACTED_IN)
导入命令:
bin/neo4j-admin import --nodes import/movies.csv --nodes import/actors.csv --relationships import/roles.csv
Example 2:自定义配置选项(Customizing configuration option)
如果你的数据不满足默认格式,我们也可以自定义配置选项,下面的csv文件被;分割,使用 | 作为数组的分隔符,用’做引号
moves2.csv
movieId:ID;title;year:int;:LABELtt0133093;'The Matrix';1999;Moviett0234215;'The Matrix Reloaded';2003;Movie|Sequeltt0242653;'The Matrix Revolutions';2003;Movie|Sequel
actors2.csv
personId:ID;name;:LABELkeanu;'Keanu Reeves';Actorlaurence;'Laurence Fishburne';Actorcarrieanne;'Carrie-Anne Moss';Actor
roles2.csv
:START_ID;role;:END_ID;:TYPEkeanu;'Neo';tt0133093;ACTED_INkeanu;'Neo';tt0234215;ACTED_INkeanu;'Neo';tt0242653;ACTED_INlaurence;'Morpheus';tt0133093;ACTED_INlaurence;'Morpheus';tt0234215;ACTED_INlaurence;'Morpheus';tt0242653;ACTED_INcarrieanne;'Trinity';tt0133093;ACTED_INcarrieanne;'Trinity';tt0234215;ACTED_INcarrieanne;'Trinity';tt0242653;ACTED_IN
neo4j-import:
bin/neo4j-admin import --nodes import/movies2.csv --nodes import/actors2.csv --relationships import/roles2.csv --delimiter ";" --array-delimiter "|" --quote "'"
使用独立的头文件
当使用非常大的csv文件的时候,把头文件放在一个独立的文件中是十分方便的,这样的话在修改头部的时候就可以不用打开一个很大的文件,import tool 也可以处理单个压缩文件例如:
--nodes nodes.csv.gz . --relationships rels.zip
movies3-header.csv:
movieId:ID,title,year:int,:LABEL
movies3.csv.
tt0133093,"The Matrix",1999,Moviett0234215,"The Matrix Reloaded",2003,Movie;Sequeltt0242653,"The Matrix Revolutions",2003,Movie;Sequel
actors3-header.csv.
personId:ID,name,:LABEL
actors3.csv.
keanu,"Keanu Reeves",Actorlaurence,"Laurence Fishburne",Actorcarrieanne,"Carrie-Anne Moss",Actor
roles3-header.csv.
:START_ID,role,:END_ID,:TYPE
roles3.csv.
keanu,"Neo",tt0133093,ACTED_INkeanu,"Neo",tt0234215,ACTED_INkeanu,"Neo",tt0242653,ACTED_INlaurence,"Morpheus",tt0133093,ACTED_INlaurence,"Morpheus",tt0234215,ACTED_INlaurence,"Morpheus",tt0242653,ACTED_INcarrieanne,"Trinity",tt0133093,ACTED_INcarrieanne,"Trinity",tt0234215,ACTED_INcarrieanne,"Trinity",tt0242653,ACTED_IN
neo4j import:
bin/neo4j-admin import --nodes "import/movies3-header.csv,import/movies3.csv" --nodes "import/actors3-header.csv,import/actors3.csv" --relationships "import/roles3-header.csv,import/roles3.csv"
多个输入文件
movies4-header.csv.
movieId:ID,title,year:int,:LABEL
movies4-part1.csv.
tt0133093,”The Matrix”,1999,Movie
tt0234215,”The Matrix Reloaded”,2003,Movie;Sequel
movies4-part2.csv.
tt0242653,”The Matrix Revolutions”,2003,Movie;Sequel
actors4-header.csv.
personId:ID,name,:LABEL
actors4-part1.csv.
keanu,”Keanu Reeves”,Actor
laurence,”Laurence Fishburne”,Actor
actors4-part2.csv.
carrieanne,”Carrie-Anne Moss”,Actor
roles4-header.csv.
:START_ID,role,:END_ID,:TYPE
roles4-part1.csv.
keanu,”Neo”,tt0133093,ACTED_IN
keanu,”Neo”,tt0234215,ACTED_IN
keanu,”Neo”,tt0242653,ACTED_IN
laurence,”Morpheus”,tt0133093,ACTED_IN
laurence,”Morpheus”,tt0234215,ACTED_IN
roles4-part2.csv.
laurence,”Morpheus”,tt0242653,ACTED_IN
carrieanne,”Trinity”,tt0133093,ACTED_IN
carrieanne,”Trinity”,tt0234215,ACTED_IN
carrieanne,”Trinity”,tt0242653,ACTED_IN
neo4j import:
bin/neo4j-admin import –nodes “import/movies4-header.csv,import/movies4-part1.csv,import/movies4-part2.csv” –nodes “import/actors4-header.csv,import/actors4part1.csv,import/actors4-part2.csv” –relationships “import/roles4-header.csv,import/roles4-part1.csv,import/roles4-part2.csv”
- neo4j import tool
- Tutorial: Import Data Into Neo4j
- CQ Import Tool 简介
- sqoop ERROR tool.ImportTool: Error during import: Import job failed!
- Neo4j
- neo4j
- Neo4j
- Neo4j
- 如何使用batch-import工具向neo4j中导入海量数据
- Tool
- tool
- tool
- tool
- Tool
- tool
- tool
- sqoop执行报错ERROR tool.ImportTool: Encountered IOException running import job: java.io.FileNotFoundExce
- Sqoop异常解决ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: No
- How does Android-x86 work? --- Chih-Wei Huang answer the problem.
- Struts2_自定义转换器
- 读《大话设计模式》学习小结(一)装饰器模式
- 常见面试题
- Harmonic Number (II) LightOJ
- neo4j import tool
- 数据显示:中国的程序员是世界上最牛的程序员
- Two Sum
- Hdoj 1089 A+B for Input-Output Practice (I)
- android aapt详解
- 浅谈Java容器类
- Redis学习之string类型及操作
- JMeter入门,测试计划编写(http请求)
- PHP的数据类型