一个节点将是一个实体 。如果我们有个人节点,我们将每人拥有一个节点 。我们会有一定程度的独特性,比如社会安全号码 。
但是,关键的区别在于,当我们将人节点连接到另一个离散实体(例如地址)时,我们会在这两点之间创建物理连接(也称为关系) 。
地址会有一个指针指向连接到节点的出站部分是什么关系?然后我们有另一个指向关系的入站部分的指针指向另一个节点 。
因此,实际上,我们正在收集一组指针,这是这两个实体之间物理连接的体现 。这是最大的不同 。
在关系数据库中,您将使用连接来重构读取的数据,这意味着当您查询时学术数据库是什么工作,它会尝试找出事物如何映射在一起 。
在图数据库中,由于我们已经知道这两个元素是相连的,所以我们不需要在查询时查找映射 。我们所做的只是跟踪与其他节点的存储关系 。
这就是我们所说的无索引邻接 。这种无索引邻接的概念是理解原生图数据库与其他数据库系统相比性能优化的关键 。
无索引邻接意味着在局部图遍历期间,就连接图中节点的这些指针(关系)而言,操作的性能不依赖于图的整体大小 。这取决于连接到您正在遍历的节点的关系数 。
当我们说 JOIN 是集合操作(??交集)时,我们使用关系数据库中的索引来查看两个集合重叠的位置 。这意味着随着表变大,JOIN 操作的性能开始变慢 。
在大 O 表示法术语中,这类似于使用索引的对数增长 - 类似于 O(log n) 并随着查询中的 JOIN 数量呈指数增长 。
另一方面,在图中遍历关系更多是基于我们实际遍历的节点中关系数量的线性增长,而不是图的整体大小 。
这是图数据库为我们提供无索引邻接的基本查询时间优化 。从性能的角度来看,当我们考虑原生图数据库时,这确实是最重要的事情 。
电影图表简介
我们已经谈到了图形数据库和关系数据库之间的理论差异 。现在让我们开始看一些并排比较 。
电影图表包含演员、导演、制片人、作家、评论家和电影的数据集,以及有关它们如何相互关联的信息 。
电影数据集包括:
虽然是一个相对较小的数据集,但它全面地描述了图的力量 。
比较数据模型
首先学术数据库是什么工作,我们来看看我们各自数据库的数据模型 。与所有数据模型一样,它们的外观最终取决于您提出的问题类型 。因此,假设我们要问以下类型的问题:
基于这些,下面是相关的底层数据模型:
图的电影实体关系数据模型
电影图的属性图数据模型
您会立即注意到一些东西 - 那些 ID 不见了!因为一旦我们知道那里有连接,我们就将数据连接在一起,我们不再需要它们,或者那些映射表让我们知道不同的数据行是如何连接在一起的 。
比较查询
现在让我们继续比较一些查询 。从 :PLAY 示例中获取一些初始查询,让我们看看查询的一些并排比较,以及等效的 SQL 查询是什么样的 。
什么是,我听到你问了?是一种用于查询 Neo4j 图数据库的图查询语言 。还有一个版本,许多其他供应商都在使用它 。
当我们查询时,它应该开始变得更加清晰,图形数据库和帮助探索关系的查询语言如何真正开始发挥作用 。让我们开始寻找汤姆汉克斯!
以上关于本文的内容,仅作参考!温馨提示:如遇专业性较强的问题(如:疾病、健康、理财等),还请咨询专业人士给予相关指导!
「辽宁龙网」www.liaoninglong.com小编还为您精选了以下内容,希望对您有所帮助:- 如果是工作搭配是白羊的勤恳和绝对的工作搭档
- 【知识点】中国古代,汉语词汇。你了解多少?
- 2022年男孩英俊阳光的名字
- 布偶猫价格
- 第一次养猫,劝你选“美短猫”,养一只不后悔
- 2022虎年生肖属蛇新历3月领证黄道吉日一览表 登记结婚好日子
- 英国短毛猫花色大全,你见过几种?
- 英短猫一般多少钱一只 英短蓝猫大概多少钱一只
- 一只红翼鹦鹉多少钱?红翼鹦鹉价格库存
- 怎样委婉拒绝好朋友的表白?