交易单分库分表处理方法、系统、电子设备及存储介质与流程

阅读: 评论:0



1.本技术涉及数据处理的技术领域,具体涉及一种交易单分库分表处理方法、系统、电子设备及存储介质。


背景技术:



2.目前,使用的交易单的存储方式是通过单库单表格模式,单库单表模式已经不能满足业务数据持续且大量的增长数量,单db模式不仅存在数据交互的性能瓶颈,而且当系统的查询语句存在漏洞时通常会导致全表扫描,危害性低时可能会影响部分用户产品的使用体验,出现较大危害时会导致系统占用大量宽带,长时间占有系统不能及时释放。当遇到用户访问量较大的情况时,qps(queries-per-second每秒查询率)突然增加,数据库宕机将会导致整个系统崩溃,此时用户无法继续使用系统平台上的产品,对于用户的需求也无法响应、处理。


技术实现要素:



3.为了解决上述背景技术中提到的至少一个问题,本技术提供了一种交易单分库分表处理方法、系统、电子设备及存储介质,具有数据存储分配均匀的优点,通过将用户的交易数据均匀分配在若干个数据库中,实现了查询灵活的效果;在进行分库分表操作时实现了不停服的状态,支持交易数据灵活地在不同维度进行数据聚合。
4.本技术实施例提供的具体技术方案如下:
5.第一方面,提供一种交易单分库分表处理方法,所述方法包括:
6.根据预计交易单数据将交易单数据拆分为若干逻辑库;
7.接收用户请求,根据所述用户请求中的用户唯一标识查询到第一逻辑库;
8.在所述第一逻辑库中写入创建交易单操作,完成交易单创建;
9.获取所述交易单流水号,根据所述交易单流水号查询到第二逻辑库;
10.在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息。
11.在一个具体的实施例中,所述根据预计交易单数据将交易单数据拆分为若干逻辑库,具体包括:
12.获取历史交易单数据,将所述历史交易单数据输入预测模型;
13.输出预计交易单数据,根据所述预计交易单数据计算得到拆分的逻辑库数量;
14.根据所述拆分的逻辑库数量将交易单数据拆分为若干逻辑库。
15.在一个具体的实施例中,根据所述用户请求中的用户唯一标识查询到第一逻辑库,具体包括:
16.获取所述调用还款请求中的用户唯一标识;
17.根据分库策略算法计算所述用户唯一标识对应的分库分表路由;
18.根据所述用户唯一标识对应的分库分表路由查询到所述第一逻辑库。
19.在一个具体的实施例中,所述在所述第一逻辑库中写入创建交易单操作,完成交
易单创建,具体包括:
20.通过分库中间件获取所述第一逻辑库的数据库链接;
21.根据所述数据库链接写入创建交易单操作。
22.在一个具体的实施例中,所述在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息,具体包括:
23.通过分库中间件获取所述第二逻辑库的数据路链接;
24.获取所述交易单流水号对应的交易单映射表;
25.根据所述第二逻辑库的数据路链接在所述交易单映射表中插入所述交易单流水号与所述用户唯一标识的映射信息。
26.在一个具体的实施例中,所述方法还包括:
27.根据所述用户唯一标识查询所述第一逻辑库中的交易单数据;
28.对所述第一逻辑库中的交易单信息进行增加、删除、修改操作;
29.根据所述交易单流水号查询所述第一逻辑库中的交易单数据。
30.在一个具体的实施例中,根据所述交易单流水号查询所述第一逻辑库中的交易单数据,具体包括:
31.获取交易单流水号,根据所述交易单流水号查询所述第二逻辑库,从所述交易单流水号与所述用户唯一标识的映射信息中查询到对应的用户唯一标识;
32.根据所述用户唯一标识查询所述第一逻辑库中的交易单数据。
33.第二方面,提供一种交易单分库分表处理系统,所述系统包括:
34.拆分模块,所述拆分模块用于根据预计交易单数据将交易单数据拆分为若干逻辑库;
35.第一查询模块,所述第一查询模块用于接收用户请求,根据所述用户请求中的用户唯一标识查询到第一逻辑库;
36.第一创建模块,所述第一创建模块用于在所述第一逻辑库中写入创建交易单操作,完成交易单创建;
37.第二查询模块,所述第二查询模块用于获取所述交易单流水号,根据所述交易单流水号查询到第二逻辑库;
38.第二创建模块,所述第二创建模块用于在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息。
39.第三方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
40.步骤a:根据预计交易单数据将交易单数据拆分为若干逻辑库;
41.步骤b:接收用户请求,根据所述用户请求中的用户唯一标识查询到第一逻辑库;
42.步骤c:在所述第一逻辑库中写入创建交易单操作,完成交易单创建;
43.步骤d:获取所述交易单流水号,根据所述交易单流水号查询到第二逻辑库;
44.步骤e:在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息。
45.第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
46.步骤a:根据预计交易单数据将交易单数据拆分为若干逻辑库;
47.步骤b:接收用户请求,根据所述用户请求中的用户唯一标识查询到第一逻辑库;
48.步骤c:在所述第一逻辑库中写入创建交易单操作,完成交易单创建;
49.步骤d:获取所述交易单流水号,根据所述交易单流水号查询到第二逻辑库;
50.步骤e:在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息。本技术实施例具有如下有益效果:
51.1.本技术实施例提供的根据预计交易单数据将交易单数据拆分为若干逻辑库,接收来自外围系统的用户请求,根据用户请求中的用户唯一标识查询到其中一个逻辑库,即第一逻辑库,然后在第一逻辑库中写入创建交易单操作,完成交易单创建;获取交易单流水号,根据交易单流水号查询得到第二逻辑库,在第二逻辑库中插入交易单流水号与用户唯一标识的映射信息,由此完成了交易单信息的分库分表;通过以上设置,具有数据存储分配均匀的优点,通过将用户的交易数据均匀分配在若干个数据库中,实现了查询灵活的效果,解决了数据库查询慢的问题,提升了交易系统的承载能力,在进行分库分表操作时实现了不停服的状态,支持交易数据灵活地在不同维度进行数据聚合。
附图说明
52.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
53.图1示出根据本技术中的交易单分库分表处理方法的示意图
54.图2用于体现本技术中的分钟级别的监控看板图;
55.图3用于体现本技术中的用户还款的流程示意图;
56.图4示出根据本技术中的交易单分库分表处理系统的示意图;
57.图5示出根据本技术中的电子设备的结构示意图。
具体实施方式
58.为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
59.如背景技术中所述,单库单表模式已经不能满足业务数据持续且大量的增长数量,单db模式不仅存在数据交互的性能瓶颈,而且当系统的查询语句存在漏洞时通常会导致全表扫描,危害性低时可能会影响部分用户产品的使用体验,出现较大危害时会导致系统占用大量宽带,长时间占有系统不能及时释放。当遇到用户访问量较大的情况时,qps(queries-per-second每秒查询率)突然增加,数据库宕机将会导致整个系统崩溃,此时用户无法继续使用系统平台上的产品,对于用户的需求也无法响应、处理。基于以上问题,本技术提出了一种交易单分库分表处理方法、系统、电子设备及存储介质。
60.实施例一
61.一种交易单分库分表处理方法,如图1所示,所述方法包括如下步骤:
62.步骤s1:根据预计交易单数据将交易单数据拆分为若干逻辑库。
63.在一个具体的实施例中,具体包括:获取历史交易单数据,将所述历史交易单数据输入预测模型;输出预计交易单数据,根据所述预计交易单数据计算得到拆分的逻辑库数量;根据所述拆分的逻辑库数量将交易单数据拆分为若干逻辑库。
64.在一个具体的实施例中,交易单数据包括订单主表中的数据和订单detail表中的数据,以及映射表中的数据。例如通过统计得出2021年的订单主表的数量为“4836万”,2021年以前的交易单的总数为“3832万”,即历史交易单数据为“3832万”,在预设模型中设置单表数量控制小于“1000万”;经过统计得出2020年的差不多4000w,2021增长了20%,所以设置2022年的年增长率为“20%”,2022年的交易单系统需要满足“4亿”左右的交易单数据,因此按照逻辑库为32个进行拆分,将交易单数据拆分为32个逻辑库;若出现实际交易单数据超过4亿之后,将历史的数据进行归档为最近的数据留出存储空间。
65.步骤s2:接收用户请求,根据所述用户请求中的用户唯一标识查询到第一逻辑库。
66.在一个具体的实施例中,根据所述用户请求中的用户唯一标识查询到第一逻辑库,具体包括:获取所述调用还款请求中的用户唯一标识;根据分库策略算法计算所述用户唯一标识对应的分库分表路由;根据所述用户唯一标识对应的分库分表路由查询到所述第一逻辑库。
67.在一个具体的实施例中,由于订单主表、订单明细表、订单优惠券记录表等都是订单相关交易表,都是通过订单主表id进行关联了,对订单主表分库之后,需要保证其他表关联订单主表id是唯一,由于交易系统历史数据的关联性没有考虑到uuid模式,在分库后还需要保证历史数据,关联关系正确,采用分库的id自增使用不同的起始值进行分段。由此可以满足交易系统未来的扩展需要,并减少对下游的影响;在数据库层面,减少了对应用程序的入侵,也避免应用程序的修改;实现过程简单,在未来如果需要对交易表继续拆分时,也可对分段部分进一步拆分以满足全局的需要。
68.在一个具体的实施例中,外围系统发起调用还款接口的请求,其中调用还款接口的请求中带有用户唯一标识信息,服务端接收到用户的请求,并通过分库策略算法计算该用户唯一标识对应的分库分表路由,到对应的第一逻辑库,第一逻辑库为逻辑库中的其中一个。
69.在一个具体的实施例中,分库中间件进行分库操作的原理,以及通过分库策略设置的用户唯一标识的分库算法如下:
[0070][0071]
通过逻辑存储库指定的用户唯一标识关联对应分库进行存储操作的代码如下:
[0072]“@repositorysharding(strategy=repayment sharding.repayment sharding stratey,key=”#userid”)
[0073]
public repayment order detail selectbyid(string userid,long id){
[0074]
return shardrepayment order detail mapper.selectby primary key(id);}”[0075]
通过以上过程,完成了分库过程,并查询到第一逻辑库。
[0076]
步骤s3:在所述第一逻辑库中写入创建交易单操作,完成交易单创建。
[0077]
在一个具体的实施例中,所述在所述第一逻辑库中写入创建交易单操作,完成交易单创建,具体包括:通过分库中间件获取所述第一逻辑库的数据库链接;根据所述数据库链接写入创建交易单操作。
[0078]
在一个具体的实施例中,在交易单创建成功后,通过分库中间件获取第一逻辑库中对应的数据库链接,根据第一逻辑库中对应的数据库链接写入创建交易单的操作。具体的,第一逻辑库中至少包括订单主表、订单明细表和映射表,根据数据库链接,将订单数据分别写入对应的数据表中。
[0079]
步骤s4:获取所述交易单流水号,根据所述交易单流水号查询到第二逻辑库。
[0080]
在一个具体的实施例中,获取交易单流水号,对交易单流水号计算对应的分库分表路由,根据交易单流水号对应的分库分表路由到对应的第二逻辑库;通过分库中间件获取第二逻辑库中的数据库链接,在交易单流水号映射表中插入交易单流水号和用户唯一标识的映射信息,以此实现对交易数据的分库分表存储。
[0081]
步骤s5:在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息。
[0082]
在一个具体的实施例中,在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息,具体包括:通过分库中间件获取所述第二逻辑库的数据路链接;获取所述交易单流水号对应的交易单映射表;根据所述第二逻辑库的数据路链接在所述交易单
映射表中插入所述交易单流水号与所述用户唯一标识的映射信息。
[0083]
在一个具体的实施例中,在交易单创建成功后,根据交易单流水号计算对应的分库分表路由,根据交易单分库分表路由查询到对应的第二逻辑库,通过分库中间件获取第二逻辑库的数据库链接(shard_y库的db链接),并结合交易单流水号在映射表中插入交易单水流号和用户唯一标识的映射信息。以此实现通过分库分表对交易单水流号与用户唯一标识映射记录的存储。
[0084]
通过以上过程,具有数据存储分配均匀的优点,通过将用户的交易数据均匀分配在若干个数据库中,实现了查询灵活的效果,解决了数据库查询慢的问题,提升了交易系统的承载能力,在进行分库分表操作时实现了不停服的状态,支持交易数据灵活地在不同维度进行数据聚合。
[0085]
在一个具体的实施例中,当需要对相应的订单数据进行查询时,具体包括根据所述用户唯一标识查询所述第一逻辑库中的交易单数据;对所述第一逻辑库中的交易单信息进行增加、删除、修改操作。
[0086]
具体包括,外围系统发起调用交易单查询接口“interface2”的请求,入参会带有用户唯一标识,服务端接收到调用请求通过分库策略算法,计算该用户唯一标识对应的分库分表路由,并到对应的shard_x库(第一逻辑库);再通过分库中间件获取shard_x库的数据库链接,从而查询到shard_x库的订单记录。
[0087]
当根据交易单流水号对订单数据进行查询时,根据所述交易单流水号查询所述第一逻辑库中的交易单数据,具体包括:获取交易单流水号,根据所述交易单流水号查询所述第二逻辑库,从所述交易单流水号与所述用户唯一标识的映射信息中查询到对应的用户唯一标识;根据所述用户唯一标识查询所述第一逻辑库中的交易单数据。具体包括:根据所述交易单流水号查询所述第一逻辑库中的交易单数据。
[0088]
具体的,外围系统发起调用交易单查询接口“interface3”,入参会带有交易单流水号;服务端接收该调用请求通过分库策略算法,计算该交易单流水号的分库分表路由,并到对应的“shard_y库”(第二逻辑库),通过分库中间件获取第二逻辑库的数据库链接,查询第二逻辑库的映射表获得对应的用户唯一标识,交易系统通过分库策略算法,计算该用户唯一标识对应的分库分表路由,然后到对应的shard_x库(第一逻辑库),通过分库中间件获取shard_x库的数据库链接,并根据用户唯一标识查询到对应的订单数据。
[0089]
在一个具体的实施例中,交易单数据主要存储在订单主表和订单明细表中,映射表中存储有交易单流水号和用户唯一标识对应的映射信息。
[0090]
在一个具体的实施例中,交易单系统中的数据通过垂直切分得到订单数据库和其他数据库,其中订单数据库包括还款订单表、还款订单明细表和映射表等等;其他数据库包括取现代还订单表、取现代还记录表、取现还款券表、取现还款券使用明细表等等。然后对订单数据表进一步进行水平切分得到若干个逻辑库,包括shard1、shard2、shard3、shard4等等。
[0091]
用于服务端的交易系统是线上已有的系统,进行分库分表操作时,为了确保交易系统的不停服的工作状态,以及保持主库跟32个逻辑库之间的数据一致性的问题,采用双写双读、单写双读、单写单读模式,能保证系统不停服或不摘取流量下平滑迁移到32个分库。而且,采用xa分布式事务,是数据库本身支持的协议,具备强一致性。满足交易系统场
景,交易系统的状态流转就是需要强一致性。
[0092]
通过以上设置实现了交易系统从单库到32个库的存储方式,使得交易单实时查询更加高效,能够覆盖大量的数据处理以及存储;同时能够通过监控看板进行数据的监控,监控看板能够对数据进行实时刷新,其中分钟级别的监控看板如图2所示。具体的,如图3所示,其中“vfq-payment”属于核心还款交易系统,维护交易单的增删改查,该系统进行了分库分表升级;“xjd”属于上游外围系统,“deduct”、“osp_captcha”属于基础服务,在用户进行还款操作时,通过交易系统中的外围系统“xjd”发起调用还款接口的请求,其中包括发送还款短信等等,开通协议通过发送验证码方式进行验证,并通过验证码发誓协议代扣预开户;用户提交验证码,系统进行验证码的校验,用户提交还款操作,系统创建代扣订单用于进行还款交易。
[0093]
实施例二
[0094]
对应上述实施例,本技术提供了一种交易单分库分表处理系统,如图4所示,所述系统包括:
[0095]
拆分模块,所述拆分模块用于根据预计交易单数据将交易单数据拆分为若干逻辑库;
[0096]
第一查询模块,所述第一查询模块用于接收用户请求,根据所述用户请求中的用户唯一标识查询到第一逻辑库;
[0097]
第一创建模块,所述第一创建模块用于在所述第一逻辑库中写入创建交易单操作,完成交易单创建;
[0098]
第二查询模块,所述第二查询模块用于获取所述交易单流水号,根据所述交易单流水号查询到第二逻辑库;
[0099]
第二创建模块,所述第二创建模块用于在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息。
[0100]
在一个具体的实施例中,拆分模块具体包括获取历史交易单数据,将所述历史交易单数据输入预测模型;输出预计交易单数据,根据所述预计交易单数据计算得到拆分的逻辑库数量;根据所述拆分的逻辑库数量将交易单数据拆分为若干逻辑库。
[0101]
在一个具体的实施例中,第一查询模块具体包括获取所述调用还款请求中的用户唯一标识;根据分库策略算法计算所述用户唯一标识对应的分库分表路由;根据所述用户唯一标识对应的分库分表路由查询到所述第一逻辑库。
[0102]
在一个具体的实施例中,第一创建模块具体包括通过分库中间件获取所述第一逻辑库的数据库链接;根据所述数据库链接写入创建交易单操作。
[0103]
在一个具体的实施例中,第二创建模块包括通过分库中间件获取所述第二逻辑库的数据路链接;获取所述交易单流水号对应的交易单映射表;根据所述第二逻辑库的数据路链接在所述交易单映射表中插入所述交易单流水号与所述用户唯一标识的映射信息。
[0104]
在一个具体的实施例中,所述系统还包括根据所述用户唯一标识查询所述第一逻辑库中的交易单数据;对所述第一逻辑库中的交易单信息进行增加、删除、修改操作;根据所述交易单流水号查询所述第一逻辑库中的交易单数据。
[0105]
在一个具体的实施例中,其中交易单流水号查询所述第一逻辑库中的交易单数据,具体包括:获取交易单流水号,根据所述交易单流水号查询所述第二逻辑库,从所述交
易单流水号与所述用户唯一标识的映射信息中查询到对应的用户唯一标识;根据所述用户唯一标识查询所述第一逻辑库中的交易单数据。
[0106]
实施例三
[0107]
提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
[0108]
步骤101:根据预计交易单数据将交易单数据拆分为若干逻辑库;
[0109]
步骤102:接收用户请求,根据所述用户请求中的用户唯一标识查询到第一逻辑库;
[0110]
步骤103:在所述第一逻辑库中写入创建交易单操作,完成交易单创建;
[0111]
步骤104:获取所述交易单流水号,根据所述交易单流水号查询到第二逻辑库;
[0112]
步骤105:在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息。
[0113]
在一个具体的实施例中,步骤101具体包括获取历史交易单数据,将所述历史交易单数据输入预测模型;输出预计交易单数据,根据所述预计交易单数据计算得到拆分的逻辑库数量;根据所述拆分的逻辑库数量将交易单数据拆分为若干逻辑库。
[0114]
在一个具体的实施例中,步骤102具体包括获取所述调用还款请求中的用户唯一标识;根据分库策略算法计算所述用户唯一标识对应的分库分表路由;根据所述用户唯一标识对应的分库分表路由查询到所述第一逻辑库。
[0115]
在一个具体的实施例中,步骤103具体包括通过分库中间件获取所述第一逻辑库的数据库链接;根据所述数据库链接写入创建交易单操作。
[0116]
在一个具体的实施例中,步骤105具体包括通过分库中间件获取所述第二逻辑库的数据路链接;获取所述交易单流水号对应的交易单映射表;根据所述第二逻辑库的数据路链接在所述交易单映射表中插入所述交易单流水号与所述用户唯一标识的映射信息。
[0117]
在一个具体的实施例中,还包括根据所述用户唯一标识查询所述第一逻辑库中的交易单数据;对所述第一逻辑库中的交易单信息进行增加、删除、修改操作;根据所述交易单流水号查询所述第一逻辑库中的交易单数据。
[0118]
在一个具体的实施例中,其中根据所述交易单流水号查询所述第一逻辑库中的交易单数据,具体包括:获取交易单流水号,根据所述交易单流水号查询所述第二逻辑库,从所述交易单流水号与所述用户唯一标识的映射信息中查询到对应的用户唯一标识;根据所述用户唯一标识查询所述第一逻辑库中的交易单数据。
[0119]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储历史交易单数据以及预测模型等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种交易单分库分表处理方法。
[0120]
本领域技术人员可以理解,图5中示出的结构,仅仅是与本技术方案相关的部分结
构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0121]
实施例四
[0122]
在一个本实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0123]
步骤201:根据预计交易单数据将交易单数据拆分为若干逻辑库;
[0124]
步骤202:接收用户请求,根据所述用户请求中的用户唯一标识查询到第一逻辑库;
[0125]
步骤203:在所述第一逻辑库中写入创建交易单操作,完成交易单创建;
[0126]
步骤204:获取所述交易单流水号,根据所述交易单流水号查询到第二逻辑库;
[0127]
步骤205:在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息。
[0128]
在一个具体的实施例中,步骤201具体包括获取历史交易单数据,将所述历史交易单数据输入预测模型;输出预计交易单数据,根据所述预计交易单数据计算得到拆分的逻辑库数量;根据所述拆分的逻辑库数量将交易单数据拆分为若干逻辑库。
[0129]
在一个具体的实施例中,步骤202具体包括获取所述调用还款请求中的用户唯一标识;根据分库策略算法计算所述用户唯一标识对应的分库分表路由;根据所述用户唯一标识对应的分库分表路由查询到所述第一逻辑库。
[0130]
在一个具体的实施例中,步骤203具体包括通过分库中间件获取所述第一逻辑库的数据库链接;根据所述数据库链接写入创建交易单操作。
[0131]
在一个具体的实施例中,步骤205具体包括通过分库中间件获取所述第二逻辑库的数据路链接;获取所述交易单流水号对应的交易单映射表;根据所述第二逻辑库的数据路链接在所述交易单映射表中插入所述交易单流水号与所述用户唯一标识的映射信息。
[0132]
在一个具体的实施例中,还包括根据所述用户唯一标识查询所述第一逻辑库中的交易单数据;对所述第一逻辑库中的交易单信息进行增加、删除、修改操作;根据所述交易单流水号查询所述第一逻辑库中的交易单数据。
[0133]
在一个具体的实施例中,其中根据所述交易单流水号查询所述第一逻辑库中的交易单数据,具体包括:获取交易单流水号,根据所述交易单流水号查询所述第二逻辑库,从所述交易单流水号与所述用户唯一标识的映射信息中查询到对应的用户唯一标识;根据所述用户唯一标识查询所述第一逻辑库中的交易单数据。
[0134]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram
(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0135]
尽管已描述了本技术实施例中的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本技术实施例中范围的所有变更和修改。
[0136]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。

技术特征:


1.一种交易单分库分表处理方法,其特征在于,所述方法包括:根据预计交易单数据将交易单数据拆分为若干逻辑库;接收用户请求,根据所述用户请求中的用户唯一标识查询到第一逻辑库;在所述第一逻辑库中写入创建交易单操作,完成交易单创建;获取所述交易单流水号,根据所述交易单流水号查询到第二逻辑库;在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息。2.根据权利要求1所述的交易单分库分表处理方法,其特征在于,所述根据预计交易单数据将交易单数据拆分为若干逻辑库,具体包括:获取历史交易单数据,将所述历史交易单数据输入预测模型;输出预计交易单数据,根据所述预计交易单数据计算得到拆分的逻辑库数量;根据所述拆分的逻辑库数量将交易单数据拆分为若干逻辑库。3.根据权利要求2所述的交易单分库分表处理方法,其特征在于,根据所述用户请求中的用户唯一标识查询到第一逻辑库,具体包括:获取所述调用还款请求中的用户唯一标识;根据分库策略算法计算所述用户唯一标识对应的分库分表路由;根据所述用户唯一标识对应的分库分表路由查询到所述第一逻辑库。4.根据权利要求3所述的交易单分库分表处理方法,其特征在于,所述在所述第一逻辑库中写入创建交易单操作,完成交易单创建,具体包括:通过分库中间件获取所述第一逻辑库的数据库链接;根据所述数据库链接写入创建交易单操作。5.根据权利要求4所述的交易单分库分表处理方法,其特征在于,所述在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息,具体包括:通过分库中间件获取所述第二逻辑库的数据路链接;获取所述交易单流水号对应的交易单映射表;根据所述第二逻辑库的数据路链接在所述交易单映射表中插入所述交易单流水号与所述用户唯一标识的映射信息。6.根据权利要求5所述的交易单分库分表处理方法,其特征在于,所述方法还包括:根据所述用户唯一标识查询所述第一逻辑库中的交易单数据;对所述第一逻辑库中的交易单信息进行增加、删除、修改操作;根据所述交易单流水号查询所述第一逻辑库中的交易单数据。7.根据权利要求6所述的交易单分库分表处理方法,其特征在于,根据所述交易单流水号查询所述第一逻辑库中的交易单数据,具体包括:获取交易单流水号,根据所述交易单流水号查询所述第二逻辑库,从所述交易单流水号与所述用户唯一标识的映射信息中查询到对应的用户唯一标识;根据所述用户唯一标识查询所述第一逻辑库中的交易单数据。8.一种交易单分库分表处理系统,其特征在于,所述系统包括:拆分模块,所述拆分模块用于根据预计交易单数据将交易单数据拆分为若干逻辑库;第一查询模块,所述第一查询模块用于接收用户请求,根据所述用户请求中的用户唯一标识查询到第一逻辑库;
第一创建模块,所述第一创建模块用于在所述第一逻辑库中写入创建交易单操作,完成交易单创建;第二查询模块,所述第二查询模块用于获取所述交易单流水号,根据所述交易单流水号查询到第二逻辑库;第二创建模块,所述第二创建模块用于在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息。9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1~7中任一项所述方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~7中任一项所述的方法的步骤。

技术总结


本申请公开了一种交易单分库分表处理方法、系统、电子设备及存储介质,涉及数据处理的技术领域,包括:根据预计交易单数据将交易单数据拆分为若干逻辑库;接收用户请求,根据所述用户请求中的用户唯一标识查询到第一逻辑库;在所述第一逻辑库中写入创建交易单操作,完成交易单创建;获取所述交易单流水号,根据所述交易单流水号查询到第二逻辑库;在所述第二逻辑库中插入所述交易单流水号与所述用户唯一标识的映射信息。本申请具有数据存储分配均匀的优点,通过将用户的交易数据均匀分配在若干个数据库中,实现了查询灵活的效果,提高了交易系统的承载能力。了交易系统的承载能力。了交易系统的承载能力。


技术研发人员:

周全

受保护的技术使用者:

上海品顺信息科技有限公司

技术研发日:

2022.09.27

技术公布日:

2022/12/30

本文发布于:2023-01-02 14:41:09,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/3/50765.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:所述   逻辑   用户   数据
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图