neo4j的基础介绍请参考https://www.w3cschool.cn/neo4j/neo4j_data_model.html,已经很详细了。
这里我只记录我希望记录的。
neo4j下载 & 安装
下载地址
我使用的是neo4j-window-3.5.5版本的,java环境要求jdk8。官网下载比较慢,可以使用以下地址下载:
链接:https://pan.baidu.com/s/1Oi2v4GnPWnS4hgv2T94QYQ
提取码:59og
安装 & 启动
window下安装很简单,解压后执行两个命令(保证已经安装了jdk8)
1.windows下安装neo4j服务,进入bin目录下,执行
neo4j install-service
提示neo4j服务安装成功(mac下应该不用执行这个的,直接执行下一步即可)
2.启动neo4j后台服务
neo4j start
提供neo4j在端口7474上启动成功
服务启动后,可以访问http://localhost:7474/browser/ 看到neo4j控制台了,如图:
neo4j中的基本概念
neo4j中使用以下几个基本概念可以存储任意数据
- Nodes(节点) - graph data records 图数据库的数据记录
- Relationships(关系) - connect nodes 节点数据之间的关系
- Properties(属性) - named data values 节点和关系的属性值
如图是巩俐参演(ACTED_IN)的电影这样一个关系,存储到neo4J中展示出来的样子。
蓝色圆圈代表是巩俐这样一个实体节点,它包含名字,性别,地址等等属性
红色圆圈代表的是电影的实体节点,它一样包括电影的名字,发行时间,评价等等属性
黑色带箭头的有向线代表是ACTED_IN这样一个关系,关系本身也可以包含很多属性,比如参演时间,参演背景等等
neo4j中的label标签:
一个节点可以有多个标签,因为刚接触,我原来是很疑惑这个标签是干嘛的,只是知道必须有。
翻看了一些资料,可以理解为:标签就是用来分组的,将相同特征的节点进行聚集归类
比如我创建了一组用户信息的节点,label都是 :User,这样我可以用这个标签对所有用户节点进行操作