neo4j创建数据库及导入csv文件内容详解

一、创建数据

neo4j展示知识图谱主要需要两类数据:节点数据和关系数据。本节主要讲解数据的输入格式。(示例数据较简单,可对照自己的数据进行调整)

1.节点文件
创建excel表格,以演员、电影数据为例:

第一列为属性名,可表示为属性名_Id,上图的属性名为actor或movie,注意取值不可重复;中间为属性值;最后一列为:LABEL(实体标签)

2.关系文件
创建excel表格,以演员和电影的关系为例:

第一列和第二列都为属性名_Id;最后一列为:TYPE(关系类型)

3.csv文件
excel中节点和关系数据生成完毕后,选择文件->另存为->保存类型为CSV UTF-8的格式(如果不保存为utf-8的格式,可能会报错或者出现乱码)

4.csv文件存储
将生成的csv文件存入neo4j的import文件夹下

二、创建数据库

1.修改配置
neo4j默认数据库为graph.db,如果不需要创建新的数据库展示知识图谱,可直接在浏览器输入http://localhost:7474/browser/并转向第三步。
如果需要创建新的数据库,进入neo4j的conf文件:

如上图所示,进入自己的neo4j软件目录下,打开neo4j.conf文件,找到dbms.active_database,改为新数据库名,此处改为mydatabase,注意新的数据库名之前没有使用过

保存后退出。

2.重启neo4j
电脑输入cmd,进入命令行,转到neo4j-community-4.3.18\bin下,输入neo4j restart重启neo4j,浏览器输入localhost:7474/browser/,进入neo4j。

3. neo4j转换数据库
可直接输入:

也可点击数据库图标,点击DBMS的:dbs:

点击:

最后Name就显示为新数据库的名称了。这里我已经转换成新数据库了,主要显示操作。

三、导入csv文件

导入csv文件有两种方式:load csvimport方法,在此使用load csv方法。

1. 节点文件:
actor文件:

LOAD CSV WITH HEADERS FROM 'file:///actor.csv' AS row MERGE (actor:actor {actorID: row.actor_Id}) ON CREATE SET actor.shipName = row.name

movie文件同上,将actor改为movie,如果文件较多,可将以上代码存入txt文件中,ctrl+H将actor全部替换为movie(稍微简单一些)

2. 关系文件:

LOAD CSV WITH HEADERS FROM 'file:///relationship.csv' AS rowMATCH (actor:actor {actorID: row.actor_Id})MATCH (movie:movie {movieID: row.movie_Id})MERGE (actor)-[:主演]->(movie)

此外,如果在neo4j的import文件夹下又创建了一个文件夹存储数据,假设文件夹为file1,导入路径为'file:///file1/relationship.csv'

3.结果