分库分表的数据处理方法、系统、存储介质及电子设备技术方案

技术编号:35195465 阅读:16 留言:0更新日期:2022-10-12 18:24
本申请公开了分库分表的数据处理方法、系统、存储介质及电子设备,可应用于大数据领域。在分库分表的过程中,通过预设全局策略将获取到的待存储数据存储至数据库集群中,通过预设局部策略将数据库集群中的待存储数据存储在数据库的数据表中。通过上述,无需将数据都迁移到新表中,只需通过预设全局策略灵活定义数据容量范围的大小,使得新增的数据容量分配新的数据库,已经分配好的数据不会被再次分配,从而满足不同业务发展阶段数据库集群资源不同的需求,简化数据迁移和数据扩容的过程。通过预设局部策略实现数据库集群中的待存储数据均匀存储在数据库的数据表中,不会出现同一张数据表的数据交易压力过大的情况,从而提高数据交易的操作性能。数据交易的操作性能。数据交易的操作性能。

【技术实现步骤摘要】
分库分表的数据处理方法、系统、存储介质及电子设备


[0001]本申请涉及数据处理
,更具体地说,涉及分库分表的数据处理方法、系统、存储介质及电子设备。

技术介绍

[0002]业务的发展会导致数据量的剧增,而物理数据库的资源是有限的,其所能承载的数据量、数据处理能力将会成为制约系统性能的瓶颈。因此需要合理的数据库架构方案来应对数据量增长,即通过分库分表,以缓解数据库的压力,提高数据操作的性能。
[0003]分库分表是将原来独立的数据库拆分成若干数据库组成,将数据大表拆分成若干数据表组成,使单一数据库、单一数据表的数据量变小,从而达到提升数据库性能的目的。
[0004]目前主流的分库分表方式包括哈希hash方案和范围range方案。其中,hash方案使得原有的存量数据均需要迁移到新表中,导致数据迁移和扩容的过程繁琐。而range方案存在单库单表的热点问题,即,一定范围的数据存在同时发生交易的可能性较高,会导致同一张表的数据交易压力过大,降低同一张表的数据交易的操作性能。
[0005]因此,现有的分库分表的方式会导致数据迁移和数据扩容的过程繁琐和降低数据交易的操作性能。

技术实现思路

[0006]有鉴于此,本申请公开了一种分库分表的数据处理方法、系统、存储介质及电子设备,旨在简化数据迁移和数据扩容的过程,不会出现同一张数据表的数据交易压力过大的情况,提高了数据交易的操作性能。
[0007]为了实现上述目的,其公开的技术方案如下:
[0008]本申请第一方面公开了一种分库分表的数据处理方法,所述方法包括:
[0009]在分库分表的过程中,通过预设全局策略将获取到的待存储数据存储至数据库集群中;所述预设全局策略用于根据数据库集群的容量存储范围分配所述待存储数据和根据新增的待存储数据量分配新的数据库的策略;所述容量存储范围为所述数据库集群能容纳的数据容量范围;
[0010]通过预设局部策略,将所述数据库集群中的待存储数据存储在数据库的数据表中;所述预设局部策略为确保在数据增长导致的数据迁移的过程中使数据库集群中的待存储数据均匀分布在数据表中的策略;所述预设局部策略由哈希取模的基数确定;所述哈希取模的基数为所述数据库集群中所有数据表的总数。
[0011]优选的,所述在分库分表的过程中,通过预设全局策略将获取到的待存储数据存储至数据库集群中,包括:
[0012]在分库分表的过程中,确定获取到的待存储数据的路由标识;所述路由标识用于表征待存储数据的编号;
[0013]通过预设全局策略确定所述路由标识在数据库集群的容量存储范围;所述数据库
集群包括多个数据库;
[0014]将所述待存储数据存储至所述容量存储范围对应的数据库中。
[0015]优选的,所述通过预设局部策略,将所述数据库集群中的待存储数据存储在数据库的数据表中,包括:
[0016]获取所述数据库中数据表的总数;
[0017]确定所述数据表的总数对应的数据表编号;
[0018]确定所述数据库集群中的待存储数据的路由标识;
[0019]通过预设取模公式,对所述数据表编号和所述路由标识进行取模,得到取模结果;所述取模结果用于表征所述待存储数据在所述数据表编号中的存储表编号;
[0020]通过所述取模结果,将所述待存储数据均匀存储至所述数据表编号对应的数据表中。
[0021]优选的,还包括:
[0022]对数据库和数据表进行统一编码操作;所述统一编码操用于确保数据库集群中的待存储数据均匀分布在数据表中。
[0023]优选的,还包括:
[0024]当监测到新增的待存储数据时,通过所述预设全局策略,将所述新增的待存储数据存储至新的数据库中。
[0025]本申请第二方面公开了一种分库分表的数据处理系统,所述系统包括:
[0026]第一存储单元,用于在分库分表的过程中,通过预设全局策略将获取到的待存储数据存储至数据库集群中;所述预设全局策略用于根据数据库集群的容量存储范围分配所述待存储数据和根据新增的待存储数据量分配新的数据库的策略;所述容量存储范围为所述数据库集群能容纳的数据容量范围;
[0027]第二存储单元,用于通过预设局部策略,将所述数据库集群中的待存储数据存储在数据库的数据表中;所述预设局部策略为确保在数据增长导致的数据迁移的过程中使数据库集群中的待存储数据均匀分布在数据表中的策略;所述预设局部策略由哈希取模的基数确定;所述哈希取模的基数为所述数据库集群中所有数据表的总数。
[0028]优选的,所述第一存储单元,包括:
[0029]第一确定模块,用于在分库分表的过程中,确定获取到的待存储数据的路由标识;所述路由标识用于表征待存储数据的编号;
[0030]第二确定模块,用于通过预设全局策略确定所述路由标识在数据库集群的容量存储范围;所述数据库集群包括多个数据库;
[0031]第一存储模块,用于将所述待存储数据存储至所述容量存储范围对应的数据库中。
[0032]优选的,所述第二存储单元,包括:
[0033]获取模块,用于获取所述数据库中数据表的总数;
[0034]第三确定模块,用于确定所述数据表的总数对应的数据表编号;
[0035]第四确定模块,用于确定所述数据库集群中的待存储数据的路由标识;
[0036]取模模块,用于通过预设取模公式,对所述数据表编号和所述路由标识进行取模,得到取模结果;所述取模结果用于表征所述待存储数据在所述数据表编号中的存储表编
号;
[0037]第二存储模块,用于通过所述取模结果,将所述待存储数据均匀存储至所述数据表编号对应的数据表中。
[0038]本申请第三方面公开了一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行如第一方面任意一项所述的分库分表的数据处理方法。
[0039]本申请第四方面公开了一种电子设备,包括存储器,以及一个或者一个以上的指令,其中一个或者一个以上指令存储于存储器中,且经配置以由一个或者一个以上处理器执行如第一方面任意一项所述的分库分表的数据处理方法。
[0040]经由上述技术方案可知,本申请公开了一种分库分表的数据处理方法、系统、存储介质及电子设备,在分库分表的过程中,通过预设全局策略将获取到的待存储数据存储至数据库集群中,预设全局策略用于根据数据库集群的容量存储范围分配待存储数据和根据新增的待存储数据量分配新的数据库的策略,容量存储范围为数据库集群能容纳的数据容量范围,通过预设局部策略,将数据库集群中的待存储数据存储在数据库的数据表中,预设局部策略为确保在数据增长导致的数据迁移的过程中使数据库集群中的待存储数据均匀分布在数据表中的策略,预设局部策略由哈希取模的基数确定,哈希取模的基数为数据库集群中所有数据表的总数。基于上述方案,无需将数据都迁移到新表中,只需通过预设全局策略灵活定义数据容量范围本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分库分表的数据处理方法,其特征在于,所述方法包括:在分库分表的过程中,通过预设全局策略将获取到的待存储数据存储至数据库集群中;所述预设全局策略用于根据数据库集群的容量存储范围分配所述待存储数据和根据新增的待存储数据量分配新的数据库的策略;所述容量存储范围为所述数据库集群能容纳的数据容量范围;通过预设局部策略,将所述数据库集群中的待存储数据存储在数据库的数据表中;所述预设局部策略为确保在数据增长导致的数据迁移的过程中使数据库集群中的待存储数据均匀分布在数据表中的策略;所述预设局部策略由哈希取模的基数确定;所述哈希取模的基数为所述数据库集群中所有数据表的总数。2.根据权利要求1所述的方法,其特征在于,所述在分库分表的过程中,通过预设全局策略将获取到的待存储数据存储至数据库集群中,包括:在分库分表的过程中,确定获取到的待存储数据的路由标识;所述路由标识用于表征待存储数据的编号;通过预设全局策略确定所述路由标识在数据库集群的容量存储范围;所述数据库集群包括多个数据库;将所述待存储数据存储至所述容量存储范围对应的数据库中。3.根据权利要求2所述的方法,其特征在于,所述通过预设局部策略,将所述数据库集群中的待存储数据存储在数据库的数据表中,包括:获取所述数据库中数据表的总数;确定所述数据表的总数对应的数据表编号;确定所述数据库集群中的待存储数据的路由标识;通过预设取模公式,对所述数据表编号和所述路由标识进行取模,得到取模结果;所述取模结果用于表征所述待存储数据在所述数据表编号中的存储表编号;通过所述取模结果,将所述待存储数据均匀存储至所述数据表编号对应的数据表中。4.根据权利要求3所述的方法,其特征在于,还包括:对数据库和数据表进行统一编码操作;所述统一编码操用于确保数据库集群中的待存储数据均匀分布在数据表中。5.根据权利要求1所述的方法,其特征在于,还包括:当监测到新增的待存储数据时,通过所述预设全局策略,将所述新增的待存储数据存储至新的数据库中。6.一种分库分表的数据处理系统,其特征在于,所述系统包括:第一存储单元,用于在...

【专利技术属性】
技术研发人员:冯玉财陈树伟许佳丽吴嘉杰焦苏芮刘煜伟
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:

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

1