Neo4j入门关键点

概念

Nodes 节点

节点经常代表实体。

比如猫节点,人节点,是两个不同的节点,猫节点下有cat1,cat2,
人下面有person1,person2。

暂且把节点理解成表,节点下面有很多条数据,但是他们以图的方式被
组织起来。

Labels 标签

标签用于把节点实例分成不同的领域。

一个标签下有一组节点数据。

Relationships 关系

一个关系连接两个节点。

关系把节点组织成结构,可以是列表,散列表,树,或者其他更复杂的结构。

Relationship types 关系类型

一个关系必须有一种确切的关系类型。

关系一定要有方向。

几个概念:
    1、source node 源节点
    2、target node 目标节点
    3、incoming relationship 进来的关联
        目标节点有一个向内的关联
    4、outgoing relationship 向外的关联
        源节点有一个向外的关联
        
注意一个节点可以跟自己有关联,比如一个人认识自己。

举例:周星驰饰演了黄渤虎点秋香,饰演就是一个关系

Properties 属性

属性是名称值组成的对。

用来给节点和关系添加特性。

值可以是string,nubmer,boolean类型。

Traversals and paths 遍历和路径

 一个遍历是如何在图中查找问题答案。
 
 例如:周星驰扮演了哪些电影?
 
 遍历的结果可以用长度为N的路径返回。
 
 路径表示遍历的长度,可以为0。

Schema 模式

 Neo4j中的模式指的是索引和约束。
 
 Neo4j的schema是可选的。
 
 索引和约束可以不在schema下创建。
 

Indexes and Constraints

 索引用来提高性能。
 
 约束用来数据适应领域的规则。

推荐的命名规则

neo4j大写小敏感。

节点、标签:驼峰式,大写字母开头。例,:VehicleOwner

关系类型: 大写字母,用下划线分隔。例,:OWNS_VEHICLE 

属性:小写驼峰,以小写字母开头。 例: firstName

数据结构

参考

[Graph database concepts](https://neo4j.com/docs/getting-started/current/graphdb-concepts/#graphdb-nodes)

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理