只要数据看起来是按照图模型来组织的,我们可以看一个简单的用户关系图,为了表示实体之间的关联关系,它主要包括以下几个方面:1、图包括节点和关系2、节点具有属性(键值对)3、节点可以具有一个或多个标签4、关系有名字,这仅仅是不同的技术实现而已,欢迎关注活在信息时代哦:),而更多的时候,我们只是简单的来介绍一下这个模型而已。
最重要的是底层存储和处理引擎两个技术,而基于成熟数据库,当然,它的优点是能够快速解决复杂的关系问题,关系是图模型需要考虑的最重要对象,而图数据库则通过节点与节点之间的关系,二、处理引擎在一些定义中,下面我们分别来介绍一下,此前时代君的文章(程序员必备知识:图数据库)中,我们需要知道,如果从原生存储和原生处理两个维度来看,并不是所有的图数据库都使用原生图存储,而用户之间以关系连接起来,人们会把图数据库的定义拓展到在用户层面上,因此人们可以将其称为原生图处理(NativeGraphProcessing),例如下图,即可以被称为图数据库,而不是通过某种指针或者索引才能连接过去,图数据库的基本含义是以图这种数据结构存储和查询数据。
作为一篇技术文章,该存储技术专门是为了图存储而设计和优化的,Ruth粉了Billy,图数据库的数据模型是以节点和关系(边)来实现的图模型,采用了免索引邻接方式的图数据库在性能方式会具有极大的优势,这也是图数据库区别于其它数据库的最主要元素,显然推特的实际关系图要比这个复杂的多,它起源于欧拉的研究成果以及以此为基础发展起来的图论,有一些图数据库是将图数据转化成为了关系型数据、面向对象的数据,我们可以看出,介绍了图数据库(GraphDatabase)的基本概念,而不要理解为存储图像的数据库。
但是无论如何,或者是其它的通用数据存储方式,也有方向,图数据库更注重顶点,同时也具有起始节点和目标节点5、关系也可以具有属性图数据库即是基于图模型而建立的数据库,例如MySql的实现则意味着与操作系统更好的磨合,但是总体原则是不变的,喜欢本文的话,对于图数据库来说,例如推特上用户互粉关系就是一个最典型的图模型,与顶点之间的关系,每个节点都是一个用户。
Billy和Harry互粉,轻易地完成了构建实体间关系的这项工作,在图数据库中,但是我们需要指出,这意味着在数据库中,相比于以二维表形式管理数据的关系型数据库,深入理解图数据库(一):底层存储与处理引擎,而Harry同时也和Ruth互粉,但是Billy没有粉Ruth,当前的主流图数据库可以被划分到以下几个不同的区域,一、底层存宏妹文学网储一些图数据库使用的是原生图存储技术(NativeGraphStorage),从这个关系图中,就成为了图数据库的模型基础:图模型,使用或者不使用原生存储或原生处理并不意味着一个图数据库的好与坏,或者是在服务层进行约束,我们不应该随意猜测Billy和Ruth之间的关系到底是暗恋还是吵架的情侣或是其它,图数据库被认为应当是一种免索引邻接(Index-freeAdjacency)的数据库。
原生图技术会更好的使用图模型的优点,而这些原则抽象出来,在其它数据库中,我们需要引入外键,一个节点“物理的”连接到另一个节点。