基于数据库中间件的分区方法、分区装置和可读存储介质制造方法及图纸

技术编号:24497302 阅读:33 留言:0更新日期:2020-06-13 03:33
本发明专利技术提供了一种基于数据库中间件的分区方法、分区装置和可读存储介质,包括:接收到数据库路由指令,确认数据库中的至少一个数据库节点发生数据阈值倾斜;根据数据阈值的倾斜程度,新建数据库分片实例;根据预先设置的节点重分布规则,将发生数据阈值倾斜的数据库节点中的维度字段进行分配,以使维度字段分布在数据库分片实例中,根据数据库分片实例生成新增数据库节点。通过控制二维,甚至n维分片字段对数据库中的某些数据进行重分布,使数据库各节点负载达到均衡,可以有效的控制数据存储过程中的数据倾斜现象,提高大数据量场景下数据库的性能。

Partition method, partition device and readable storage medium based on Database Middleware

【技术实现步骤摘要】
基于数据库中间件的分区方法、分区装置和可读存储介质
本专利技术涉及数据库中间件
,具体而言,涉及一种基于数据库中间件的分区方法、一种基于数据库中间件的分区装置及一种计算机可读存储介质。
技术介绍
当前主流中间件分片算法主要以Hash(哈希算法)、Range(水平切分)等一维分片算法为主。一维数据划分方法只根据单个属性进行划分,数据划分范围受限制。由于数据库系统经过长时间运行之后,特别是经过大量的插入和删除操作,各节点的数据的分布将不再均衡,各节点的负载会严重失衡,即发生了数据倾斜,如果数据存储分布不合理,将会加大数据操作的响应时间,降低并行数据库的性能。
技术实现思路
本专利技术旨在至少解决现有技术中存在的技术问题之一。为此,本专利技术的第一方面提供了一种基于数据库中间件的分区方法。本专利技术的第二方面提供了一种基于数据库中间件的分区装置。本专利技术的第三方面提供了一种计算机可读存储介质。有鉴于此,根据本专利技术的第一方面,提供了一种基于数据库中间件的分区方法,包括:接收到数据库路由指令本文档来自技高网...

【技术保护点】
1.一种基于数据库中间件的分区方法,其特征在于,包括:/n接收到数据库路由指令,确认数据库中的至少一个数据库节点发生数据阈值倾斜;/n根据数据阈值的倾斜程度,新建数据库分片实例;/n根据预先设置的节点重分布规则,将所述发生数据阈值倾斜的所述数据库节点中的维度字段进行分配,以使所述维度字段分布在所述数据库分片实例中;/n根据所述数据库分片实例生成新增数据库节点。/n

【技术特征摘要】
1.一种基于数据库中间件的分区方法,其特征在于,包括:
接收到数据库路由指令,确认数据库中的至少一个数据库节点发生数据阈值倾斜;
根据数据阈值的倾斜程度,新建数据库分片实例;
根据预先设置的节点重分布规则,将所述发生数据阈值倾斜的所述数据库节点中的维度字段进行分配,以使所述维度字段分布在所述数据库分片实例中;
根据所述数据库分片实例生成新增数据库节点。


2.根据权利要求1所述的基于数据库中间件的分区方法,其特征在于,所述根据预先设置的节点重分布规则,将所述发生数据阈值倾斜的所述数据库节点中的维度字段进行分配,具体包括:
获取各个所述数据库节点中预存的所述维度字段;
根据所述节点重分布规则中的维度遍历规则,提取所述维度字段中的维度值,并根据所述维度值对所述维度字段进行排序;
提取所述维度字段中对应的所述数据阈值,确认所述数据阈值和目标临界数值的大小关系,调取排序后的所述维度字段;
将所述调取的所述维度字段分配到新建后的任一所述数据库分片实例中。


3.根据权利要求2所述的基于数据库中间件的分区方法,其特征在于,所述提取所述维度字段中对应的所述数据阈值,确认所述数据阈值和目标临界数值的大小关系,调取排序后的所述维度字段,具体包括:
确认所述数据阈值小于所述目标临界数值,根据所述目标临界数值与所述数据阈值的差值,从下一个排序后的所述维度字段对应的所述数据阈值中调取所述差值,根据所述节点重分布规则中的调用规则,调取与所述差值和所述数据阈值分别对应的所述维度字段;
确认所述数据阈值大于等于所述目标临界数值,根据所述目标临界数值,从所述数据阈值中调取所述目标临界数值,根据所述节点重分布规则中的调用规则,调取与所述数据阈值对应的所述维度字段。


4.根据权利要求1至3中任一项所述的基于数据库中间件的分区方法,其特征在于,所述根据数据阈值的倾斜程度,新建数据库分片实例,具体包括:
获取所述倾斜程度的各个比例值,控制所述数据库中间件内预设的创建规则,为发生所述数据阈值倾斜的至少一个所述数据库节点,新建所述数据库分片实例。


5.根据...

【专利技术属性】
技术研发人员:冯光武
申请(专利权)人:北大方正集团有限公司北京北大方正电子有限公司
类型:发明
国别省市:北京;11

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

1