本申请涉及分布式数据处理,具体涉及一种分库下分红尾差处理方法、装置、计算机设备及计算机可读存储介质。
背景技术:
1、为了实现数据库的可扩展性和可用性等性能,相关技术中,采用分库架构实现全局数据的分片存储,分库架构是将数据库按某种规则拆分成多个数据库实例,将全局数据采用分库数据表形式进行存储,以实现更高的可扩展性和可用性等性能。例如,在金融领域中,理财分红业务数据可以采用分库架构形式存储,在每个分库数据表中存储多条客户份额记录,以使得理财分红业务数据的存储可扩展性和可用性更高。
2、然而,当需要对数据库全局数据进行统计时(例如,理财分红业务场景中,实际总已分配分红与总应分配分红会存在金额差值,因此需要针对分红差值进行二次分红分配,故需要针对单个客户份额记录的分红尾差、持有份额等信息对所有客户份额记录进行排序,并优先给排序靠前的客户份额记录进行二次分红),通常需要将每个分库的数据表传输至中间件进行分库全局排序,这种方式需要占用大量网络传输资源,长时间占用数据库连接,因此分库架构下全局数据的统计处理效率较低。
技术实现思路
1、本申请提供一种分库下分红尾差处理方法、装置、计算机设备及计算机可读存储介质,可以降低分库架构下全局数据统计时的数据传输量,减少分库数据表的连接时长,提高分库架构下全局数据的统计处理效率。
2、第一方面,本申请提供一种分库下分红尾差处理方法,所述方法包括:
3、获取分红产品的剩余待分配分红、所述分红产品的份额记录数据以及所述剩余待分配分红的应拆份额初始值,其中,所述份额记录数据包括多个分库数据表;
4、基于每个分库数据表的尾差列和所述应拆份额初始值,获取所述剩余待分配分红的目标尾差值和所述目标尾差值的应拆份额第一剩余值;
5、基于所述目标尾差值、所述应拆份额第一剩余值和所述每个分库数据表的份额列,获取所述剩余待分配分红的目标份额值和所述目标份额值的应拆份额第二剩余值;
6、基于所述目标尾差值、所述目标份额值、所述应拆份额第二剩余值和所述每个分库数据表的标识列,获取所述剩余待分配分红的目标标识值;
7、基于所述目标尾差值、所述目标份额值和所述目标标识值,从所述每个分库数据表各客户分份额记录中,确定所述剩余待分配分红的目标客户份额记录。
8、第二方面,本申请提供一种分库下分红尾差处理装置,所述分库下分红尾差处理装置包括:
9、第一获取单元,用于获取分红产品的剩余待分配分红、所述分红产品的份额记录数据以及所述剩余待分配分红的应拆份额初始值,其中,所述份额记录数据包括多个分库数据表;
10、第二获取单元,用于基于每个分库数据表的尾差列和所述应拆份额初始值,获取所述剩余待分配分红的目标尾差值和所述目标尾差值的应拆份额第一剩余值;
11、所述第二获取单元,还用于基于所述目标尾差值、所述应拆份额第一剩余值和所述每个分库数据表的份额列,获取所述剩余待分配分红的目标份额值和所述目标份额值的应拆份额第二剩余值;
12、所述第二获取单元,还用于基于所述目标尾差值、所述目标份额值、所述应拆份额第二剩余值和所述每个分库数据表的标识列,获取所述剩余待分配分红的目标标识值;
13、处理单元,用于基于所述目标尾差值、所述目标份额值和所述目标标识值,从所述每个分库数据表各客户分份额记录中,确定所述剩余待分配分红的目标客户份额记录。
14、第三方面,本申请还提供一种计算机设备,所述计算机设备包括存储器和处理器;所述存储器用于存储计算机程序;所述处理器用于执行所述计算机程序并在执行所述计算机程序时实现所述的分库下分红尾差处理方法。
15、第四方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行所述的分库下分红尾差处理方法。
16、本申请中,第一方面,通过依次确定目标尾差值、目标份额值和目标标识值,可以组合分红尾差、持有份额和标识等信息,从每个分库数据表有序中索引出目标客户份额记录,提高目标客户份额记录的结果数据覆盖全面性。第二方面,通过基于目标尾差值、目标份额值和目标标识值,从每个分库数据表各客户分份额记录中,确定剩余待分配分红的目标客户份额记录,可以直接通过每个分库数据表的客户份额记录与目标尾差值、目标份额值和目标标识值的关系,潜在地进行排序筛选出目标客户份额记录,每个分库数据表可以独立查找目标客户份额记录,无需每个分库数据表排序后、再将每个分库数据表的排序后数据传输至中间件合并排序查找,降低分库架构下全局数据统计时的数据传输量,降低分库数据表的连接时长,提高分库架构下全局数据的统计处理效率。
1.一种分库下分红尾差处理方法,其特征在于,所述方法包括:
2.根据权利要求1所述的分库下分红尾差处理方法,其特征在于,所述基于每个分库数据表的尾差列和所述应拆份额初始值,获取所述剩余待分配分红的目标尾差值和所述目标尾差值的应拆份额第一剩余值,包括:
3.根据权利要求2所述的分库下分红尾差处理方法,其特征在于,所述基于所述目标尾差子区间的精度和所述应分份额变量的当前赋值,确定所述目标尾差值和所述应拆份额第一剩余值,包括:
4.根据权利要求2所述的分库下分红尾差处理方法,其特征在于,所述基于所述目标尾差子区间的精度和所述应分份额变量的当前赋值,确定所述目标尾差值和所述应拆份额第一剩余值,包括:
5.根据权利要求2所述的分库下分红尾差处理方法,其特征在于,所述从所述各尾差子区间中,确定所述尾差区间变量的目标尾差子区间,包括:
6.根据权利要求1所述的分库下分红尾差处理方法,其特征在于,所述基于所述目标尾差值、所述应拆份额第一剩余值和所述每个分库数据表的份额列,获取所述剩余待分配分红的目标份额值和所述目标份额值的应拆份额第二剩余值,包括:
7.根据权利要求1所述的分库下分红尾差处理方法,其特征在于,所述基于所述目标尾差值、所述目标份额值和所述目标标识值,从所述每个分库数据表各客户分份额记录中,确定所述剩余待分配分红的目标客户份额记录,包括:
8.一种分库下分红尾差处理装置,其特征在于,所述分库下分红尾差处理装置包括:
9.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器;
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器进行加载,以执行权利要求1至7任一项所述的分库下分红尾差处理方法。