Neo4j 图形数据库中的标签是什么

Neo4j 图形数据库中的标签是什么,neo4j,labels,Neo4j,Labels,我不熟悉图形数据库,目前正在试用neo4j。谁能帮我理解一下: 1) 标签到底是什么? 2) 如何/在何处使用? 3) 我们为什么需要它们?没有他们我们能工作吗 我读过关于标签的书,但我不能理解这个概念 谢谢。标签用于命名/分类/分类/键入图形中的节点和关系,该图形不表示单一类型的实体 如果您的所有节点都是人,并且您的所有关系都代表两个相互认识的人,那么您不需要标签。但是,如果对更复杂的对象建模,则标签允许您直接键入节点和关系,而不必依赖节点或关系的一个或多个属性来描述。这是一种标准的、可立即访

我不熟悉图形数据库,目前正在试用neo4j。谁能帮我理解一下:

1) 标签到底是什么? 2) 如何/在何处使用? 3) 我们为什么需要它们?没有他们我们能工作吗

我读过关于标签的书,但我不能理解这个概念


谢谢。

标签用于命名/分类/分类/键入图形中的节点和关系,该图形不表示单一类型的实体

如果您的所有节点都是人,并且您的所有关系都代表两个相互认识的人,那么您不需要标签。但是,如果对更复杂的对象建模,则标签允许您直接键入节点和关系,而不必依赖节点或关系的一个或多个属性来描述。这是一种标准的、可立即访问的描述实体性质的方法

或者,通过更直观的方式,标签允许Neo4j浏览器使用不同的颜色显示不同性质的节点:)

正如您在中所读到的,标签表示节点的一种类或更好的类型

标签是一种命名图构造,用于将节点分组到 套;使用相同标签标记的所有节点都属于同一集合。 许多数据库查询可以使用这些集合,而不是整个集合 图形,使查询更易于编写,执行效率更高。A. 节点可以使用任意数量的标签进行标记,包括“无”标签 标记图形中的可选添加项

定义约束和添加索引时使用标签 属性(请参见模式)

例如,一个名为User的标签可以标记所有节点 使用。有了它,您可以让Neo4j 仅在用户节点上执行操作,例如查找所有用户 有一个名字

但是,您可以使用标签进行更多操作。例如,由于标签 可以在运行时添加和删除,它们可以用于标记 节点的临时状态。您可以为其创建脱机标签 离线的手机,快乐宠物的快乐标签,等等

一个节点可以有多个标签,这一点很重要。例如,代表Benedict Cumberbatch的
节点可以标记为:
演员
英国人

可以按标签查询节点。这意味着Benedict Cumberbatch的
节点属于这些集合中的每一个,它将在以下查询的每个结果集中返回:

MATCH (p:Person) return p
MATCH (p:Man) return p
MATCH (p:Actor) return p 
MATCH (p:British) return p 

标签不是强制性的,但使用它们被认为是对数据进行分类并按类型获取数据的最佳做法。

3.0版中的AFAIK.x标签保留给,而节点和关系都保留标签。这很奇怪,因为我曾经为rel使用过一种标签(例如,
[:Type\u of\u rel]
)关系只有一种类型,而节点可以有多个标签,正如您在回答中所指出的。是的,说关系有一个标签有点滥用语言,但在我看来,这是同一个概念。我不知道这是否只是一个词汇的问题,不同类型和标签是否有具体的区别。。。