[发明专利]建立全局索引的分布式数据库系统及能力提升方法在审
申请号: | 202111413011.9 | 申请日: | 2021-11-25 |
公开(公告)号: | CN114328717A | 公开(公告)日: | 2022-04-12 |
发明(设计)人: | 陆明 | 申请(专利权)人: | 北京思特奇信息技术股份有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/22 |
代理公司: | 北京汇信合知识产权代理有限公司 11335 | 代理人: | 王维新 |
地址: | 100086 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 建立 全局 索引 分布式 数据库 系统 能力 提升 方法 | ||
本发明公开了一种建立全局索引的分布式数据库系统及能力提升方法,应用于数据库领域,方法包括:针对分布式数据库的主表数据,按照分区键值进行数据分区,且每个数据分区为相互独立的数据结构;针对每个数据分区设置本地索引,本地索引用于映射当前数据分区中的主表数据;构建全局索引表,全局索引表中存储全局索引数据,全局索引数据用于映射整个主表中不同数据分区的所有数据;在接收到数据访问请求时,根据请求指令中的全局索引字段,通过全局索引表的全局索引数据映射至具有相应键值的数据分区,从而访问相应的主表数据。通过本发明的技术方案,大大提高了分布式数据库的处理性能,真正提升了分布式数据库的线性扩展能力。
技术领域
本发明涉及数据库技术领域,尤其涉及一种建立全局索引的分布式数据库系统以及一种通过建立全局索引的分布式数据库线性扩展能力提升方法。
背景技术
当某业务库使用了分布式数据库分库分表方案(如图1所示)后,数据按照一定的拆分算法(如图2所示)被打散分布在多个数据库分区,这样就构成了一个理想中的分布式数据库环境。
分布式数据库的优势在于对于空间问题和请求访问问题分而治之。针对每个分区的访问,由该分区所在的节点响应即可。即使该SQL(Structured Query Language,结构化查询语言)并发很高,由于访问的是不同的分区,分别由不同的节点提供服务。每个节点自身也有一定能力满足一定的QPS(Queries Per Second,每秒查询率),所有节点集中在一起就能提供更大的QPS。这是分布式数据库使用最好的情形。
然而,要发挥出这种分布式数据库最好的性能,需要SQL在访问分区表的时候除了带上本地的数据库索引,还要业务SQL尽量能带上拆分键,以便分布式数据库根据拆分键值计算出SQL落地分区就是这个道理。但是如果业务场景确实无法带上拆分键,那么分布式数据库将只能对所有分区节点的数据进行全分区扫描,分区越多性能反而越低。
可以说,如果不能解决上述问题,就无法体现出分布式数据库的线性扩展能力。虽然业内有很多大家所熟悉的分布式数据库产品(如MongoDB,Cassandra,Hbase等),但这些分布式数据库都无法提供全局索引功能。
发明内容
针对上述问题,本发明提供了一种建立全局索引的分布式数据库系统及能力提升方法,通过设置独立于数据分区的全局索引表,对分布式数据库使用场景提供全局索引能力,无论数据被拆分到多少个数据分区,只要配置了全局索引表和字段,在访问主表数据时根据访问指令中的全局索引字段,就能避免扫描不必要的数据分区,大大提高分布式数据库的处理性能,真正提升分布式数据库的SQL线性扩展能力。
为实现上述目的,本发明提供了一种建立全局索引的分布式数据库系统,包括:分布式数据库和全局索引表;
所述分布式数据库的主表数据按照分区键值进行数据分区,每个数据分区为相互独立的数据结构,每个数据分区内设置有本地索引,所述本地索引用于映射当前数据分区中的主表数据;
所述全局索引表中存储全局索引数据,所述全局索引数据用于映射整个主表中不同数据分区的所有数据,当所述全局索引数据的键值在所述主表中不同数据分区有重复值时,映射至对应数据分区中的主表数据。
在上述技术方案中,优选地,所述全局索引表不进行索引分区,以单一数据结构中的全局索引数据与所述分布式数据库的主表数据相映射。
在上述技术方案中,优选地,所述全局索引表按照哈希方式或范围方式进行索引分区,将所述全局索引数据按照相应的方式分散至不同的索引分区中;
针对不同索引分区中的全局索引数据,每个全局索引数据仍根据键值与所述主表中不同数据分区的主表数据相映射。
本发明还提出一种通过建立全局索引的分布式数据库线性扩展能力提升方法,应用于如上述技术方案中任一项公开的建立全局索引的分布式数据库系统,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京思特奇信息技术股份有限公司,未经北京思特奇信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111413011.9/2.html,转载请声明来源钻瓜专利网。