图数据库 | 9、图查询语言的进化(下)

在图数据库中,逻辑上只有两类基础的数据类型:顶点(Nodes或Vertices)和边(Edges)​。

一个顶点具有自己的ID和属性(标签、类别及其他属性)​。

边也类似,但它通常是由两个顶点的顺序决定的(所谓有向图指的是每条边由一个初始顶点对应一个终止顶点,再加上其他属性所构成,例如边的方向、标签、权重等)​。除了这些基础的数据结构,图数据库并不需要任何预先定义的模式或表结构。

这种极度简化的理念恰恰和人类如何思考以及存储信息有着很大的相似性——人类通常并不在脑海中设定表结构,而是随机应变。

现在,让我们看一些真实世界场景中的图数据库实现。下图是一个典型图数据集中顶点的属性定义,它包含最初的几个字段的定义,如desc、level、name、type等,也存在一些动态生成、扩增的字段,如#cc、#pr、#khop_1等。对比关系型数据库而言,整个表的结构是动态可调整的。

图:图数据集中的顶点属性(动态属性)

注意上图2-36中的Name和Type字段的属性为string类型,它可以最大化兼容广谱的数据类型,进而提供最大化的灵活性。顶点之间如何产生关联也无须被预先定义,这样所形成的关联网络也是灵活的。

细心的读者一定会问,这种灵活性怎么实现和保证性能的优化呢?通常的做法是通过存储与计算分层来实现。例如为了实

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值