全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

图数据库、mysql和kv数据库有什么不同?

发布时间:2023-10-13 00:47:05
发布人:xqq

一、图数据库、mysql和kv数据库有什么不同

区别还是很大的,最根本的区别还是底层存储结构上的区别。

图数据库应该就是使用图作为底层存储结构。在结构上关系上应该是更强大的。

mysql之类的关系数据库以表(直观上的行列)作为操作对象,底层结构索引都是用来保证对表的快速操作的,上层接口上是线性的。

kv数据库严格来说不是数据库,只是一种存储的结构,只是v部分可以存储多种数据,本质的查询部分还是key,这部分一般只是一种结构(哈希/BST)。名列前茅层key是查询接口,第二层的v是结构相关的。它的真正的高效检索部分是名列前茅部分。可以等同于只有多列的表,但列与列之间没有行约束关系。

另外,虽然图数据库理论上结构上有优势但实际上应该说还是关系数据更有操作上的优势,这主要从信息角度不管是哪种数据库都不能解决复杂的数据查询问题。图结构和表结构没有本质区别,但操作对象上表达形式上要复杂的,表结构具有操作上的直观优势,更易于理解和使用。比对kv结构,kv的优势是结构是松散的更少的约束性,修改更方便。

kv数据库封装成数据库是不太可能的,这是因为基础结构本质的不同。相比关系型数据库它还少了相当多的结构和特征。

延伸阅读:

二、图数据库优点有什么

使用图(或者网)的方式来表达现实世界的关系很直接、自然,易于建模。比如某人喜欢看某电影,就可以建立一条边连接这个人和这部电影,这条边就叫做“喜欢”边,同时这个人还可以有其它边,比如“朋友”边、“同学”边等,同样这个电影也可以有其它边,比如“导演”边、“主演”边等,这样就构建了自然的关系网。图数据库可以很高效的插入大量数据。图数据库面向的应用领域数据量可能都比较大,比如知识图谱、社交关系、风控关系等,总数据量级别一般在亿或十亿以上,有的甚至达到百亿边。mysql不做分表分库的情况下插入百万数据基本就慢到不行,图数据库基本能胜任亿级以上的数据,比如neo4j、titan(janus)、hugegraph等图数据库,持续插入十亿级的数据基本还能保持在一个较高的速度。图数据库可以很高效的查询关联数据。传统关系型数据库不擅长做关联查询,特别是多层关联(比如查我的好友的好友有哪些人),因为一般来说都需要做表连接,表连接是一个很昂贵的操作,涉及到大量的IO操作及内存消耗。图数据库对关联查询一般都进行针对性的优化,比如存储模型上、数据结构、查询算法等,防止局部数据的查询引发全部数据的读取。
#it技术干货

相关文章

RESTful API的命名有什么讲究?

RESTful API的命名有什么讲究?

2023-10-13
SELECT * 效率低的原因是什么?

SELECT * 效率低的原因是什么?

2023-10-13
WHERE中有很多IN判断怎么提速?

WHERE中有很多IN判断怎么提速?

2023-10-13
mysql为什么需要undo log?

mysql为什么需要undo log?

2023-10-13

最新文章

常见网络安全面试题:Windows常用的命令有哪些?

常见网络安全面试题:Windows常用的命令有哪些?

2023-10-09
常见网络安全面试题:根据设备告警如何展开排查?

常见网络安全面试题:根据设备告警如何展开排查?

2023-10-09
常见网络安全面试题:mysql加固呢?(数据库加固)

常见网络安全面试题:mysql加固呢?(数据库加固)

2023-10-09
常见网络安全面试题:windows和linux加固?(操作系统加固)

常见网络安全面试题:windows和linux加固?(操作系统加固)

2023-10-09
在线咨询 免费试学 教程领取