数据处理方法、数据库系统、计算机设备和存储介质技术方案

技术编号:37502702 阅读:32 留言:0更新日期:2023-05-07 09:38
本申请公开一种数据处理方法、数据库系统、计算机设备和存储介质,属于数据库技术领域。该方法应用于包含有第一设备、管理模块和数据系统的数据库系统,第一设备存储索引节点的数据,数据系统中多个第二设备存储数据节点的数据。该方法包括:第一设备获取数据修改集需分发至的n个目标数据节点的全局页标识,生成与n个目标数据节点对应的n个映射信息并发送给管理模块。管理模块生成与n个映射信息对应的n个数据修改信息,将数据修改信息中数据修改任务发送给数据修改信息中第二设备标识所标识的第二设备,以指示第二设备更新数据节点。本申请中,可将默克尔B+树中数据节点的更新和存储压力分散到多个第二设备上,可提升该数据库系统的性能。数据库系统的性能。数据库系统的性能。

【技术实现步骤摘要】
数据处理方法、数据库系统、计算机设备和存储介质


[0001]本申请涉及数据库
,特别涉及一种数据处理方法、数据库系统、计算机设备和存储介质。

技术介绍

[0002]默克尔B+树是以B+树为基础进行改进的树结构,其包含两种类型的节点:索引节点和处于最后一层的数据节点。相关技术中,索引节点存放其下属节点的最小键和哈希值,数据节点存放键值对(即key

value)。默克尔B+树中每个节点存放的数据可以以页的形式存储在磁盘中。
[0003]目前,数据库可以基于默克尔B+树实现,也即,数据库的底层存储引擎可以为默克尔B+树结构。然而,在数据量持续增长的情况下,数据库的性能会在数据量积累到一定程度后,受单机内存大小和磁盘性能的影响,吞吐量表现持续下降。

技术实现思路

[0004]本申请提供了一种数据处理方法、数据库系统、计算机设备和存储介质,可以提升数据库系统的性能。所述技术方案如下:第一方面,提供了一种数据处理方法,所述方法应用于数据库系统,所述数据库系统包括第一设备、管理模块和数据系统,所述数据系统包括本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法应用于数据库系统中的管理模块,所述数据库系统包括第一设备、所述管理模块和数据系统,所述数据系统包括多个第二设备,所述第一设备用于存储默克尔B+树中索引节点的数据,所述多个第二设备用于存储所述默克尔B+树中数据节点的数据,所述方法包括:接收所述第一设备发送的n个映射信息,所述n个映射信息与n个目标数据节点一一对应,所述n个目标数据节点为数据修改集中的指定数据在所述默克尔B+树中需分发至的数据节点,所述n个映射信息中每个映射信息包括对应的目标数据节点的全局页标识和数据列表,所述数据列表包括所述数据修改集中需分发至对应的目标数据节点的至少一个指定数据,所述n为正整数;生成与所述n个映射信息一一对应的n个数据修改信息,所述n个数据修改信息中每个数据修改信息包括对应的映射信息中的全局页标识关联的第二设备标识和数据修改任务,所述数据修改任务包括对应的映射信息中的全局页标识关联的局部页标识以及对应的映射信息中的数据列表;将所述n个数据修改信息中任意的一个数据修改信息中的数据修改任务发送给所述一个数据修改信息中的第二设备标识所标识的第二设备,所述数据修改任务用于指示更新所述默克尔B+树中的数据节点。2.如权利要求1所述的方法,其特征在于,所述将所述n个数据修改信息中任意的一个数据修改信息中的数据修改任务发送给所述一个数据修改信息中的第二设备标识所标识的第二设备,包括:若所述n个数据修改信息中存在包括的第二设备标识相同的多个数据修改信息,则将所述多个数据修改信息中的数据修改任务携带于同一个数据修改消息中发送给所述多个数据修改信息中的第二设备标识所标识的第二设备。3.如权利要求1所述的方法,其特征在于,所述将所述n个数据修改信息中任意的一个数据修改信息中的数据修改任务发送给所述一个数据修改信息中的第二设备标识所标识的第二设备之后,还包括:接收所述多个第二设备中任意的一个第二设备发送的磁盘页分配请求,所述磁盘页分配请求用于请求为至少一个新数据节点中的每个新数据节点分配页标识,所述至少一个新数据节点是根据所述数据修改任务确定得到的;确定所述磁盘页分配请求中指示的各个新数据节点的第二设备标识和局部页标识;向所述一个第二设备发送携带有所述各个新数据节点的第二设备标识和局部页标识的磁盘页分配结果。4.如权利要求3所述的方法,其特征在于,所述确定所述磁盘页分配请求中指示的各个新数据节点的第二设备标识和局部页标识,包括:若所述磁盘页分配请求中指示的新数据节点的数量小于第一数量,则在所述一个第二设备中为所述磁盘页分配请求中指示的各个新数据节点分配局部页标识,将所述一个第二设备的设备标识确定为所述各个新数据节点的第二设备标识;若所述磁盘页分配请求中指示的新数据节点的数量大于或等于第一数量,则从所述多个第二设备中除所述一个第二设备之外的其他第二设备中选择第二数量的第二设备,根据预设比例在所述一个第一设备和选择出的所述第二数量的第二设备中为所述磁盘页分配
请求中指示的各个新数据节点分配局部页标识,将为所述各个新数据节点所分配的局部页标识所属的第二设备的设备标识确定为所述各个新数据节点的第二设备标识。5.如权利要求3所述的方法,其特征在于,所述确定所述磁盘页分配请求中指示的各个新数据节点的第二设备标识和局部页标识之后,包括:根据所述磁盘页分配请求中指示的各个新数据节点的第二设备标识和局部页标识确定所述各个新数据节点的全局页标识;向所述第一设备发送数据修改结果,所述数据修改结果携带所述各个新数据节点的最小键、哈希值和全局页标识,所述数据修改结果用于指示更新所述默克尔B+树中的索引节点。6.如权利要求1至5任意一项所述的方法,其特征在于,所述数据修改集具有对应的区块,所述数据修改集是在执行完对应的区块中的交易后产生的;所述方法还包括:接收所述第一设备发送的设备新增指令,所述设备新增指令携带目标设备标识和指定区块标识,所述设备新增指令用于指示新增所述目标设备标识所标识的设备以及指示所新增的设备是从所述指定区块标识所标识的区块开始被启用;将所述指定区块标识和所述目标设备标识添加到所述数据系统的设备拓扑元信息。7.如权利要求6所述的方法,其特征在于,所述数据系统中初始的第二设备的预置值为0;所述将所述指定区块标识和所述目标设备标识添加到所述数据系统的设备拓扑元信息,包括:将已分配的最大全局页标识确定为全局页标识分界点,确定所述全局页标识分界点对应的旧设备数量和新设备数量,根据所述全局页标识分界点确定所述数据系统中各个第二设备的极限局部页标识,根据所述数据系统中各个第二设备的极限局部页标识确定所述目标设备标识所标识的设备的预置值,所述目标设备标识所标识的设备的预置值为在本次新增设备后比所述数据系统中设备标识最小的第二设备的极限局部页标识大1的局部页标识对应的全局页标识;将设备动态信息添加到所述数据系统的设备拓扑元信息,所述设备动态信息包括所述指定区块标识、所述目标设备标识、所述全局页标识分界点、所述数据系统中各个第二设备的极限局部页标识、所述全局页标识分界点对应的旧设备数量和新设备数量、所述目标设备标识所标识的设备的预置值,所述设备动态信息用于实现全局页标识与关联的第二设备标识和局部页标识之间的转换。8.如权利要求7所述的方法,其特征在于,所述方法还包括:在大于或等于所述指定区块标识所标识的指定区块的执行过程中,若接收到所述第一设备发送的一个全局页标识,则在所述一个全局页标识小于或等于所述全局页标识分界点的情况下,将所述一个全局页标识与所述全局页标识分界点对应的旧设备数量进行取模运算,得到与所述一个全局页标识关联的第二设备标识,将所述一个全局页标识减去所述一个全局页标识关联的第二设备标识所标识的第二设备的预置值后再除以所述全局页标识分界点对应的旧设备数量后得到的数值进行向下取整,得到与所述一个全局页标识关联的局部页标识;在所述一个全局页标识大于所述全局页标识分界点的情况下,将所述一个全局页标识与所述全局页标识分界点对应的新设备数量进行取模运算,得到与所述一个全局页标识关
联的第二设备标识,将所述一个全局页标识减去所述一个全局页标识关联的第二设备标识所标识的第二设备的预置值后再除以所述全局页标识分界点对应的新设备数量后得到的数值进行向下取整,得到与所述一个全局页标识关联的局部页标识。9.如权利要求7或8所述的方法,其特征在于,所述方法还包括:在大于或等于所述指定区块标识所标识的指定区块的执行过程中,若在一个第二设备中为一个数据节点分配了一个局部页标识,则在所述一个第二设备的设备标识不为所述目标设备标识的情况下,若所述一个局部页标识小于或等于所述一个第二设备的极限局部页标识,则将所述一个局部页标识与所述全局页标识分界点对应的旧设备数量相乘后与所述一个第二设备的设备标识和所述一个第二设备的预置值累加,得到与所述一个第二设备的设备标识和所述一个局部页标识关联的全局页标识;在所述一个第二设备的设备标识不为所述目标设备标识的情况下,若所述一个局部页标识大于所述一个第二设备的极限局部页标识,则将所述一个局部页标识与所述全局页标识分界点对应的新设备数量相乘...

【专利技术属性】
技术研发人员:张珂杰黄方蕾郭威邱炜伟胡麦芳
申请(专利权)人:杭州趣链科技有限公司
类型:发明
国别省市:

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

1