Neo4j中的节点标签,基本等同于关系数据库中的table表名,或者说是一个类别。 但是跟table不同的是,这里节点很方便的有多个标签: (n:Person :User):官方文档:标签是一种命名图构造,用于将节点分组为集。
一、Neo4j 中节点名称和节点标签到底是什么关系
Neo4j中的节点标签,基本等同于关系数据库中的table表名,或者说是一个类别。 但是跟table不同的是,这里节点很方便的有多个标签: (n:Person :User):官方文档:
标签是一种命名图构造,用于将节点分组为集;所有标记相同标签的节点都属于同一集合。
多个节点名称可以看作多个抽象的class,每个class下有多个instance,每个instance都有多个property。 (这里其实还要有个relationships,正好满足图数据库的各个特征,为啥不加呢,原因2点:名列前茅,抽象成class,其实例的对象是没有关系只有属性。 第二点,某种程度上看关系就是属性的刻画,比如例如李安是一个实体,李安是一个人物(type),少年派的奇幻漂流是一个实体,少年派的奇幻漂流是一个电影(type),很明显两个实体之间存在着关系即为:李安→导演→少年派的奇幻漂流因此李安与少年派的奇幻漂流之间的关系可以用属性“导演”刻画。 那么可以根据属性构建一层关系,人物(type)→导演(property)→电影(type)。 )
延伸阅读:
二、Neo4j图数据库是什么
Neo4j是一个高性能的,NOSQL数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事物特性的java持久化引擎。Neo4j也可以看作是一个高性能的图引擎,该引擎具有成熟数据库所有特性。
Neo4j图数据库适用的场景
- 社交媒体和社交网络图: 以Neo4j图形数据库为基础,社交网络APP可以轻松处理社交关系或根据活动推断关系。
- 知识图谱: 基于Neo4j数据类型以及图形的强大搜索功能, 由知识点之间的关系建立知识图,帮助用户搜索到关联的知识 。
- 反欺诈多维关联分析: 通过图分析可以清楚的知道洗钱网络及相关嫌疑,例如对用户所使用的账号、发生交易时的IP地址、MAC地址、手机IMEI号等进行关联分析
- 企业关系图谱: 企业在日常经营中,与客户、合作伙伴、渠道方、投资者都会打交道,这也决定了企业对社会各个领域都广有涉猎,呈现面错综复杂,因此可以通过Neo4j的企业数据图谱来查询,层层挖掘信息。
- 推荐:基于Neo4j的优势进行个性化推荐, 通过分析用户有哪些朋友、用户朋友喜好的产品、用户的浏览记录等关系信息推测用户的喜好进而为用户推荐商品