分布式数据库执行计划分配方法、装置及电子设备制造方法及图纸

技术编号:38466598 阅读:8 留言:0更新日期:2023-08-11 14:43
本发明专利技术提供一种分布式数据库执行计划分配方法、装置及电子设备,所述方法包括:获取MPP集群中各个节点的负载信息;基于所述各个节点的负载信息,对物理执行计划进行拆分及分配处理。本发明专利技术可以合理地对物理执行计划进行拆分及分配处理,可以有效提高数据库集群的资源利用率,提升数据库系统的信息吞吐量,减少数据库阻塞现象的发生。数据库阻塞现象的发生。数据库阻塞现象的发生。

【技术实现步骤摘要】
分布式数据库执行计划分配方法、装置及电子设备


[0001]本专利技术涉及数据库
,尤其涉及一种分布式数据库执行计划分配方法、装置及电子设备。

技术介绍

[0002]在大规模并行处理(Massively Parallel Processor,MPP)架构数据库中,结构化查询语言(Structured Query Language,SQL)数据经过语法解析(parse)、分析(anlyze)、改写(rewrite)、优化(optimize)等阶段处理,最终生成物理执行计划。物理执行计划通过分布式拆分方法分成若干个计划碎片(Plan Fragment)后,才能多机并行执行。
[0003]现有技术中,主要采用如下两种分布式拆分方法来确定拆分的Plan Fragment的个数。第一种是根据分布式数据库的计算节点的数目确定Plan Fragment的个数,通常Plan Fragment的个数等于计算节点的个数;第二种是通过数据在节点的分布来确定Plan Fragment的个数,通常Plan Fragment的个数等于保存有数据的存储节点的个数。然而,上述两种方法在执行过程中会导致数据库集群的计算资源利用率十分低下,容易造成数据库阻塞的现象发生。

技术实现思路

[0004]本专利技术提供一种分布式数据库执行计划分配方法、装置及电子设备,用以解决现有技术中分布式拆分方式在执行过程中会导致数据库集群的计算资源利用率十分低下,容易造成数据库阻塞的现象发生的缺陷。
[0005]本专利技术提供一种分布式数据库执行计划分配方法,包括:
[0006]获取MPP集群中各个节点的负载信息;
[0007]基于所述各个节点的负载信息,对物理执行计划进行拆分及分配处理。
[0008]根据本专利技术提供的一种分布式数据库执行计划分配方法,所述基于所述各个节点的负载信息,对物理执行计划进行拆分及分配,包括:
[0009]按照预设负载类型划分信息,根据所述各个节点的负载信息,确定所述各个节点所属的负载类型以及各个所述负载类型对应的节点数量;所述预设负载类型划分信息是根据节点负载信息的大小划分得到的,所述负载类型用于表征每个节点的数据处理能力大小;
[0010]根据所述各个节点所属的负载类型以及各个所述负载类型对应的节点数量,对物理执行计划进行拆分及分配。
[0011]根据本专利技术提供的一种分布式数据库执行计划分配方法,所述负载类型分为第一负载类型和第二负载类型;所述根据所述各个节点所属的负载类型以及各个所述负载类型对应的节点数量,对物理执行计划进行拆分及分配,包括:
[0012]根据所述各个节点所属的负载类型以及各个所述负载类型对应的节点数量,确定所述第一负载类型对应的节点数量;所述第一负载类型对应的节点的负载信息小于所述第
二负载类型对应的节点的负载信息;
[0013]在确定所述第一负载类型对应的节点数量与所述MPP集群中各个节点的数量的比值不低于目标阈值的情况下,根据所述第一负载类型对应的节点数量,对所述物理执行计划进行拆分,得到多个第一计划碎片;
[0014]将各个所述第一计划碎片分配给所述第一负载类型对应的节点处理。
[0015]根据本专利技术提供的一种分布式数据库执行计划分配方法,所述第一负载类型包括第一负载子类型和第二负载子类型;所述根据所述第一负载类型对应的节点数量,对所述物理执行计划进行拆分,得到多个第一计划碎片,包括:
[0016]基于所述第一负载类型对应的节点数量,得到所述第一负载子类型对应的节点数量和所述第二负载子类型对应的节点数量;所述第一负载子类型对应的节点的负载信息小于所述第二负载子类型对应的节点的负载信息;
[0017]确定所述第二负载子类型对应的节点数量与预设分配系数的乘积,并基于所述乘积的数值与所述第一负载子类型对应的节点数量,确定计划碎片拆分数量;
[0018]根据所述计划碎片拆分数量,对所述物理执行计划进行拆分,得到多个第一计划碎片。
[0019]根据本专利技术提供的一种分布式数据库执行计划分配方法,所述将各个所述第一计划碎片分配给所述第一负载类型对应的节点处理,包括:
[0020]从各个所述第一计划碎片中选取目标数量的第一计划碎片;所述目标数量是基于所述第一负载子类型对应的各个节点的数量确定的;
[0021]将所述目标数量的第一计划碎片分配给所述第一负载子类型对应的各个节点处理;
[0022]将各个所述第一计划碎片中除所述目标数量的第一计划碎片以外的剩余计划碎片,随机分配给所述第二负载类型对应的节点处理。
[0023]根据本专利技术提供的一种分布式数据库执行计划分配方法,在所述根据所述各个节点所属的负载类型以及各个所述负载类型对应的节点数量,确定所述第一负载类型对应的节点数量之后,所述方法还包括:
[0024]在确定所述第一负载类型对应的节点数量与所述MPP集群中各个节点的数量的比值低于目标阈值的情况下,根据所述MPP集群中各个节点的数量,对所述物理执行计划进行划分,得到多个第二计划碎片;
[0025]将各个所述第二计划碎片分配给所述MPP集群中各个节点处理。
[0026]本专利技术还提供一种分布式数据库执行计划分配装置,包括:
[0027]第一获取模块,用于获取MPP集群中各个节点的负载信息;
[0028]第一分配模块,用于基于所述各个节点的负载信息,对物理执行计划进行拆分及分配处理。
[0029]本专利技术还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述分布式数据库执行计划分配方法。
[0030]本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述分布式数据库执行计划分配方法。
[0031]本专利技术还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述分布式数据库执行计划分配方法。
[0032]本专利技术提供的分布式数据库执行计划分配方法、装置及电子设备,通过考虑MPP集群中各个节点服务器的负载状况,实时监测数据库节点网络中各个节点当前运行的负载信息,在数据库SQL数据处理过程中,根据各个节点的负载信息,合理地对物理执行计划进行拆分及分配处理,可以有效提高数据库集群的资源利用率,提升数据库系统的信息吞吐量,减少数据库阻塞现象的发生。
附图说明
[0033]为了更清楚地说明本专利技术或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0034]图1是本专利技术提供的分布式数据库执行计划分配方法的流程示意图;
[0035]图2是本专利技术提供的分布式数据库执行计划分配装置本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式数据库执行计划分配方法,其特征在于,包括:获取MPP集群中各个节点的负载信息;基于所述各个节点的负载信息,对物理执行计划进行拆分及分配处理。2.根据权利要求1所述的分布式数据库执行计划分配方法,其特征在于,所述基于所述各个节点的负载信息,对物理执行计划进行拆分及分配,包括:按照预设负载类型划分信息,根据所述各个节点的负载信息,确定所述各个节点所属的负载类型以及各个所述负载类型对应的节点数量;所述预设负载类型划分信息是根据节点负载信息的大小划分得到的,所述负载类型用于表征每个节点的数据处理能力大小;根据所述各个节点所属的负载类型以及各个所述负载类型对应的节点数量,对物理执行计划进行拆分及分配。3.根据权利要求2所述的分布式数据库执行计划分配方法,其特征在于,所述负载类型分为第一负载类型和第二负载类型;所述根据所述各个节点所属的负载类型以及各个所述负载类型对应的节点数量,对物理执行计划进行拆分及分配,包括:根据所述各个节点所属的负载类型以及各个所述负载类型对应的节点数量,确定所述第一负载类型对应的节点数量;所述第一负载类型对应的节点的负载信息小于所述第二负载类型对应的节点的负载信息;在确定所述第一负载类型对应的节点数量与所述MPP集群中各个节点的数量的比值不低于目标阈值的情况下,根据所述第一负载类型对应的节点数量,对所述物理执行计划进行拆分,得到多个第一计划碎片;将各个所述第一计划碎片分配给所述第一负载类型对应的节点处理。4.根据权利要求3所述的分布式数据库执行计划分配方法,其特征在于,所述第一负载类型包括第一负载子类型和第二负载子类型;所述根据所述第一负载类型对应的节点数量,对所述物理执行计划进行拆分,得到多个第一计划碎片,包括:基于所述第一负载类型对应的节点数量,得到所述第一负载子类型对应的节点数量和所述第二负载子类型对应的节点数量;所述第一负载子类型对应的节点的负载信息小于所述第二负载子类型对应的节点的负载信息;确定所述第二负载子类型对应的节点数量与预设分配系数的乘积,并基于所述乘积的数值与所述...

【专利技术属性】
技术研发人员:艾明达
申请(专利权)人:北京东方国信科技股份有限公司
类型:发明
国别省市:

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

1