2017-03-20 96 views
-1

我想知道在关系方面Neo4j和SQL有什么区别。Neo4j和SQL关系有什么区别?

例如:

如果我使用`

1:n的

`或N:1 什么是Neo4j的等效?

或者,如果我使用

N:M(n具有M)

我们做什么的?Neo4j的

谢谢。

回答

2

我想你应该回顾一下Neo4j网站上的更多信息,包括开发者文档,并在图形数据库的上下文中搜索“无索引邻接”。

此外,当您确定是否需要连接表时,您所指的更像是某种建模,因为您使用的示例从不直接用于任何SQL查询。

一般来说,Neo4j不使用表结构,所以不需要连接表。所有到节点或从节点的关系都可以从节点本身获得,而不需要任何中间结构。

Neo4j每个节点可以拥有尽可能多的关系,它们可以是不同类型或相同类型,并且可以是任何方向。没有什么限制节点关系的基数,也不需要对关系的基数进行任何明确的建模。

如果你想添加另一个相同类型的关系到不同的节点,没有什么会阻止你。

0

Neo4j作为Graph类型数据库的NoSQL的强大之处在于它的模式更少,即您不需要考虑数据的预定义模式。例如,您可以拥有多个具有相同标签(a:Person),(b:Person),(c:Person)的节点,并且只有“a”节点与另一个节点有关系,这意味着节点相同的标签预计不会采取相同的方式。

假设我们有(m:电影),(n:电影)。在Neo4j中,我们可以有2个关系(a) - >(m)和(a) - >(u)。这意味着“a”与Movie的关系为1:2,但b和c与任何电影都没有关系,“n”也与任何Person没有关系,并且没关系,Neo4j处理所有这些差异。

+0

无架构。不是无模式。总有架构,无论是由数据库还是应用程序定义。 –

相关问题