System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于分布式数据库的数据处理方法及相关设备技术_技高网

一种基于分布式数据库的数据处理方法及相关设备技术

技术编号:44088150 阅读:4 留言:0更新日期:2025-01-21 12:25
本说明书提供了一种基于分布式数据库的数据处理方法及相关设备。该分布式数据库中的数据表被划分为多个分区;所述分布式数据库的存储层中维护了与所述多个分区对应的多个物理分区对象,以及与每个物理分区对象对应的数据结构信息;该方法包括:获取针对目标数据表的数据操作请求;解析所述数据操作请求,以从所述目标数据表包含的多个分区中确定出待操作的目标分区;获取维护的与所述目标分区对应的目标物理分区对象对应的数据结构信息;根据所述数据结构信息,对基于所述数据操作请求生成的执行计划进行优化处理,并基于优化处理后的所述执行计划,对所述目标物理分区对象中存储的数据执行数据操作。

【技术实现步骤摘要】

本说明书一个或多个实施例涉及数据库,尤其涉及一种基于分布式数据库的数据处理方法及相关设备


技术介绍

1、区别与传统单机数据库系统,分布式数据库系统通过数据分片技术来实现数据库的可扩展性。具体地,一张数据表的数据可以按照某种规则水平拆分为多个分片,每个分片可以称为一个表分区,简称分区(partition)。同一张表的不同分区、以及不同表的不同分区可以按照一定的策略分布到多台机器上,以实现服务能力和存储容量的水平扩展。其中,分区是分布式数据库中进行数据迁移的最小单位,当需要扩展系统服务能力或存储容量时,可通过将分区迁移到其他服务节点来实现。

2、在分布式数据库的存储层中,维护了与多个分区对应的多个物理分区对象,每个物理分区对象中存储了对应分区的数据。其中,非分区表可以对应一个物理分区对象;一级分区表的每个一级分区可以对应一个物理分区对象;二级分区表的每个二级分区可以对应一个物理分区对象。

3、基于此,在分布式数据库中,如何高效地对不同物理分区对象中存储的数据进行数据操作,是亟待解决的问题。


技术实现思路

1、有鉴于此,本说明书一个或多个实施例提供一种基于分布式数据库的数据处理方法及相关设备。

2、第一方面,本说明书提供了一种基于分布式数据库的数据处理方法,所述分布式数据库中的数据表被划分为多个分区;所述分布式数据库的存储层中维护了与所述多个分区对应的多个物理分区对象,以及与每个物理分区对象对应的数据结构信息;

3、所述方法包括:

4、获取针对目标数据表的数据操作请求;

5、解析所述数据操作请求,以从所述目标数据表包含的多个分区中确定出待操作的目标分区;

6、获取维护的与所述目标分区对应的目标物理分区对象对应的数据结构信息;

7、根据所述数据结构信息,对基于所述数据操作请求生成的执行计划进行优化处理,并基于优化处理后的所述执行计划,对所述目标物理分区对象中存储的数据执行数据操作。

8、第二方面,本说明书提供了一种基于分布式数据库的数据处理装置,所述分布式数据库中的数据表被划分为多个分区;所述分布式数据库的存储层中维护了与所述多个分区对应的多个物理分区对象,以及与每个物理分区对象对应的数据结构信息;

9、所述装置包括:

10、第一获取单元,用于获取针对目标数据表的数据操作请求;

11、确定单元,用于解析所述数据操作请求,以从所述目标数据表包含的多个分区中确定出待操作的目标分区;

12、第二获取单元,用于获取维护的与所述目标分区对应的目标物理分区对象对应的数据结构信息;

13、执行单元,用于根据所述数据结构信息,对基于所述数据操作请求生成的执行计划进行优化处理,并基于优化处理后的所述执行计划,对所述目标物理分区对象中存储的数据执行数据操作。

14、相应地,本说明书还提供了一种计算设备,包括:存储器和处理器;所述存储器上存储有可由所述处理器运行的计算机程序/指令;所述处理器运行所述计算机程序/指令时,执行上述第一方面所述的基于分布式数据库的数据处理方法。

15、相应地,本说明书还提供了一种计算机可读存储介质,其上存储有计算机程序/指令,所述计算机程序/指令被处理器运行时,执行如上述第一方面所述的基于分布式数据库的数据处理方法。

16、相应地,本说明书还提供了一种计算机程序产品,所述计算机程序产品包括计算机程序/指令,所述计算机程序/指令被处理器执行时,执行如上述第一方面所述的基于分布式数据库的数据处理方法。

17、综上所述,本申请应用于分布式数据库,该分布式数据库中的数据表被划分为多个分区;该分布式数据库的存储层中维护了与多个分区对应的多个物理分区对象,以及与每个物理分区对象对应的数据结构信息。在一示出的实施方式中,可以先获取针对目标数据表的数据操作请求。然后,解析该数据操作请求,以从目标数据表包含的多个分区中确定出待操作的目标分区。然后,存储层获取维护的与该目标分区对应的目标物理分区对象对应的数据结构信息。进一步地,可以根据该数据结构信息,对基于该数据操作请求生成的执行计划进行优化处理,并基于优化处理后的执行计划,对目标物理分区对象中存储的数据执行数据操作。如此,本申请通过在分布式数据库的存储层中维护了与数据表的多个分区一一对应的多个物理分区对象,以及与每个物理分区对象一一对应的数据结构信息(例如schema信息),实现了将存储层中的物理分区对象与schema信息紧耦合。如此一来,存储层掌握了schema信息,相当于掌握了各个物理分区对象对应的分区中的数据规律,进而可以对基于当前数据操作请求所生成的执行计划进行优化处理,以对物理分区对象中存储的数据执行高效的数据操作,提升分布式数据库系统的性能,保证用户的使用体验。

本文档来自技高网
...

【技术保护点】

1.一种基于分布式数据库的数据处理方法,其特征在于,所述分布式数据库中的数据表被划分为多个分区;所述分布式数据库的存储层中维护了与所述多个分区对应的多个物理分区对象,以及与每个物理分区对象对应的数据结构信息;

2.根据权利要求1所述的方法,其特征在于,所述数据结构信息包括schema信息。

3.根据权利要求2所述的方法,其特征在于,所述解析所述数据操作请求,以从所述目标数据表包含的多个分区中确定出待操作的目标分区,包括:

4.根据权利要求3所述的方法,其特征在于,所述多个分区中的每个分区以多副本的形式存储在多个设备中;每个物理分区对象包含与该物理分区对象对应的分区的多个副本;

5.根据权利要求4所述的方法,其特征在于,每个分区对应一个日志流,所述日志流中包含按序生成的多个事务日志;所述对所述目标物理分区对象包含的所述目标分区的多个副本中存储的所述目标数据记录分别执行数据操作,包括:

6.根据权利要求5所述的方法,其特征在于,所述多个副本包含主副本和从副本;所述对所述目标物理分区对象包含的所述目标分区的多个副本中存储的所述目标数据记录分别执行数据操作,包括:

7.根据权利要求4所述的方法,其特征在于,所述分布式数据库包含多个可用区,每个可用区包含至少一个设备;每个分区以多副本的形式存储在所述多个可用区中;所述存储层中还维护了每个物理分区对象的标识;

8.根据权利要求7所述的方法,其特征在于,每个物理分区对象的标识为基于与该物理分区对象对应的schema信息生成的标识。

9.根据权利要求8所述的方法,其特征在于,每个物理分区对象的标识为基于与该物理分区对象对应的三元组生成的标识,所述三元组为基于与该物理分区对象对应的schema信息生成的三元组;所述三元组包括与该物理分区对象对应的数据表的标识、一级分区标识和二级分区标识。

10.根据权利要求2所述的方法,其特征在于,所述根据所述数据结构信息,对基于所述数据操作请求生成的执行计划进行优化处理,包括:

11.根据权利要求2-10任意一项所述的方法,其特征在于,与每个物理分区对象对应的schema信息包括以下示出的至少一种信息:与每个物理分区对象对应的数据表的名称、数据表的索引结构、数据表中的字段名称和字段类型,以及与每个物理分区对象对应的分区的分区名称和分区等级。

12.一种基于分布式数据库的数据处理装置,其特征在于,所述分布式数据库中的数据表被划分为多个分区;所述分布式数据库的存储层中维护了与所述多个分区对应的多个物理分区对象,以及与每个物理分区对象对应的数据结构信息;

13.一种计算设备,其特征在于,包括:存储器和处理器;所述存储器上存储有可由所述处理器运行的计算机程序/指令;所述处理器运行所述计算机程序/指令时,执行如权利要求1-11任意一项所述的方法。

14.一种计算机可读存储介质,其特征在于,其上存储有计算机程序/指令,所述计算机程序/指令被处理器执行时实现如权利要求1-11任意一项所述的方法。

15.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现如权利要求1-11任意一项所述的方法。

...

【技术特征摘要】

1.一种基于分布式数据库的数据处理方法,其特征在于,所述分布式数据库中的数据表被划分为多个分区;所述分布式数据库的存储层中维护了与所述多个分区对应的多个物理分区对象,以及与每个物理分区对象对应的数据结构信息;

2.根据权利要求1所述的方法,其特征在于,所述数据结构信息包括schema信息。

3.根据权利要求2所述的方法,其特征在于,所述解析所述数据操作请求,以从所述目标数据表包含的多个分区中确定出待操作的目标分区,包括:

4.根据权利要求3所述的方法,其特征在于,所述多个分区中的每个分区以多副本的形式存储在多个设备中;每个物理分区对象包含与该物理分区对象对应的分区的多个副本;

5.根据权利要求4所述的方法,其特征在于,每个分区对应一个日志流,所述日志流中包含按序生成的多个事务日志;所述对所述目标物理分区对象包含的所述目标分区的多个副本中存储的所述目标数据记录分别执行数据操作,包括:

6.根据权利要求5所述的方法,其特征在于,所述多个副本包含主副本和从副本;所述对所述目标物理分区对象包含的所述目标分区的多个副本中存储的所述目标数据记录分别执行数据操作,包括:

7.根据权利要求4所述的方法,其特征在于,所述分布式数据库包含多个可用区,每个可用区包含至少一个设备;每个分区以多副本的形式存储在所述多个可用区中;所述存储层中还维护了每个物理分区对象的标识;

8.根据权利要求7所述的方法,其特征在于,每个物理分区对象的标识为基于与该物理分区对象对应的schema信息生成的标识。

9.根据权利要求8所述的...

【专利技术属性】
技术研发人员:徐泉清王万红杨传辉
申请(专利权)人:北京奥星贝斯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1