图数据库 | 7、图数据库三大组件之一 之 图存储(下)

图数据库中有三大组件——图计算、图存储以及图查询语言。上一个篇文章,老夫聊到了图存储,重点讲的是它的基础概念以及图存储引擎的架构设计中的一对重要概念——非原生图与原生图,接下来我们就聊聊关于图存储数据结构与构图的那些事儿吧。

我们知道,在实际的应用场景中,SQL类数据库很少用来做2层或以上的查询,这是由它的存储结构和计算模式决定的。

例如,在一个工商图谱中,从某个企业顶点出发,以递归的方式查询它的投资人(上游)​,找到所有持股比例大于0.1%的股东,穿透5层,并返回全部的持股路径(及完整的子图)​。

显然,这个问题如果用SQL来解决会非常复杂,代码量大,而且因“递归穿透”问题而导致代码可读性低。当然,它最大的问题是计算复杂度高,时效性变得很差(性能会指数级地差于基于原生图的图计算系统)​。

另外一个方面,SQL非常不善于处理异构的数据,例如持股路径,一条路径上有点、边,而且是不同类型的点(公司和人)​,从数据组装角度来看,还需要在SQL之外封装如XML、JSON之类的数据结构,才可能支持如此复杂的查询逻辑(业务逻辑)​。在一个有1万条持股关系的表中进行5层查询的耗时为38s,SQL代码

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值