01 图数据库简介

2019-10-01  本文已影响0人  武漂的小丙

1 图是什么

2 图领域概览

图领域可以分成如下两部分:

主流的图模型有3种,如下:

2.1 图数据库

图数据库管理系统:

图数据库一般用于事务(OLTP)系统中,对事务性能进行了优化,在设计时通常考虑了事务完整性和操作可用性。

图数据库有两个特性需要多加考虑:

原生图的优劣:

2.2 图计算引擎

图计算引擎的作用:

图计算引擎的特色:

图计算引擎:

大部分分布式图计算引擎都是基于Google发布的Pregel白皮书(主要讲述了如何使用图计算引擎来计算网页排名)

3 图数据库的威力

3.1 性能

与关系型数据库相比,随着数据集的不断增大,关系型数据库处理密集join(join-inensive)查询的性能也会随之变差

图数据库在数据集增大时,它的性能趋向于保持不变,这是因为查询总是只与图的一部分相关。每个查询的执行时间只和满足查询条件的那部分便利的图的大小成正比(而不是整个图的大小)

3.2 灵活性

我们希望问题域来决定如何连接数据,不需要在对数据的真实模样和复杂度了解最少的时候,被迫预先做出决定,随着对问题域了解的加深,结构和模式(schema)会自己浮现出来。

图天生是可扩展的,即对已存在的结构添加不同种类的新联系、新节点、新标签和新子图,而不用担心破幻已有的查询或应用程序的功能。

基于图的灵活性特征,我们不必在项目最初就穷思竭虑的吧领域中的每个细节末枝都考虑到模型中,对于不断变化的业务需求,简直就是蛮干。这意味着做更少的数据迁移,从而降低维护开销和风险。

3.3 敏捷性

我们希望能像改进应用程序的其他部分一样改进我们的数据模型。现代图数据库可以让我们平滑的开发方式、配以优雅的系统维护做到这一点。现代图数据库天生不需要模式,再加上其API和查询语言的可测性,使我们可以用一个可控的方式来开发应用程序。

同时因为图数据库不需要模式,所以它缺少以模式为导向的数据管理机制,但这并不是一个风险,相反它促使我们采用了一种更可见、可操作的管理方式。

图数据库的管理通常作用于编程方式,利用测试来驱动数据模型和查询,以及依靠图来断言业务规则。

图数据库开发方式非常符合当今的敏捷软件开发和测试驱动软件开发实践,这使得以图数据库为后端的应用程序可以跟上不断变化的业务环境。

上一篇下一篇

猜你喜欢

热点阅读