当前位置:   article > 正文

java neo4j_Neo4j基本入门

neo4j java

Neo4j基本入门

Javaneo4j

Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。程序员工作在一个面向对象的、灵活的网络结构下而不是严格、静态的表中——但是他们可以享受到具备完全的事务特性、企业级的数据库的所有好处。

一、基本概念

25a83318bffc866ee0f8795b1df4c144.png

neo4j存储节点

1. 标签(Label)

在Neo4j中,一个节点可以有一个以上的标签,从现实世界的角度去看,一个标签可以认为节点的某个类别,比如BOOK、MOVIE等等。

2. 节点(Node)

节点是指一个实实在在的对象,这个对象可以有好多的标签,表示对象的种类,也可以有好多的属性,描述其特征,节点与节点之间还可以形成多个有方向(或者没有方向)的关系。

3. 关系(Relationship)

用来描述节点与节点之间的关系,这也是图数据与与普通数据库最大的区别,正是因为有这些关系的存在,才可以描述那些我们普通行列数据库所很难表示的网状关系,比如我们复杂的人际关系网,所谓的六度理论,就可以很方便的用图数据库进行模拟,比如我们大脑神经元之间的连接方式,都是一张复杂的网。

有一点需要重点注意,关系可以拥有属性。

4. 属性(Property)

描述节点的特性,采用的是Key-Value结构,可以随意设定来描述节点的特征。

二、查询语法(CQL)

序号

关键字

关键字作用

1

CREATE

创建

2

MATCH

匹配

3

RETURN

加载

4

WHERE

过滤检索条件

5

DELETE

删除节点和关系

6

REMOVE

删除节点和关系的属性

7

ORDER BY

排序

8

SET

添加或更新属性

1. 基本查找match return

neo4j使用的查询语法是Cypher语法与我们常用的SQL查询语法不一样,但是在初步的学习之后,觉得他们之间使用的思路有很多重叠的地方,整个语句的执行流程也和SQL有比较多相似的地方。

# 创建两个节点,一个子节点(Mask),一个父节点(Old_mask),他们之间是属于父子关系

# 其中create表示新建

# p 表示这个节点的别名

# PERSON 表示节点p的标签PERSON的属性

# {} 大括号中间的键值对,表示p这个节点作为PERSON这个标签类别所拥有的属性

# -[r:SON_OF]-> 表示节点p指向节点f,他们之间的关系是SON_OF,这个关系的别名是r,r可以拥有属于自己的属性

# return 表示执行这段语句之后,需要返回的对象,return p,r,f 表示返回 节点p,节点f,以及他们之间的关系r

create(p:PERSON {name:"Mask",age:30,heigh:180,weight:80})-[r:SON_OF]->(f:PERSON {name:"OLD_Mask",age:55,heigh:160,weight:60}) return p,r,f

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/672726
推荐阅读
相关标签
  

闽ICP备14008679号