本公开涉及计算机,具体地,涉及一种汇总记账方法、装置、介质、电子设备和程序产品。
背景技术:
1、相关技术中,汇总记账方案主要是通过减少实际账户的操作频率来实现动账能力的提升。为了保障数据一致,汇总记账过程中的所有操作都需要在同一个数据库分片(也即,单数据库分片)上使用事务操作,这样就带来了两个明显问题:
2、(1)汇总记账性能受限:除了要写入记账凭证外,该单数据库分片上还要有很多其他操作,这使得该单数据库分片上的账户在汇总记账方案下能达到的每秒系统处理事务数(transaction per second,tps)也有限;
3、(2)数据倾斜问题:对于同一个账户来说,其所有订单和动账凭证都要落到同一个单数据库分片上;然而,账户间的动账流量并不平均,对于一些大流量的账户,其所在单数据库分片的容量就会增长得相对更快,并且这种情况下,没有办法通过数据库的水平扩容来快速解决。
技术实现思路
1、提供该
技术实现要素:
部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该发明内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
2、第一方面,本公开提供一种汇总记账方法,包括:将所述待记账账户的订单和记账凭证存储到多个订单分片上,其中,所述订单分片为用于存储所述订单和所述记账凭证的数据库分片;在满足预设汇总记账条件的情况下,从所述多个订单分片上读取相应批次的所存储的记账凭证;基于所读取的记账凭证进行汇总记账,以实现跨数据库分片汇总记账。
3、第二方面,本公开提供一种汇总记账装置,包括:存储模块,用于将所述待记账账户的订单和记账凭证存储到多个订单分片上,其中,所述订单分片为用于存储所述订单和所述记账凭证的数据库分片;读取模块,用于在满足预设汇总记账条件的情况下,从所述多个订单分片上读取相应批次的所存储的记账凭证;记账模块,用于基于所读取的记账凭证进行汇总记账,以实现跨数据库分片汇总记账。
4、第三方面,本公开提供一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理装置执行时实现第一方面中任一项所述方法的步骤。
5、第四方面,本公开提供一种电子设备,包括:
6、存储装置,其上存储有计算机程序;
7、处理装置,用于执行所述存储装置中的所述计算机程序,以实现第一方面中任一项所述方法的步骤。
8、第五方面,本公开提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面中任一项所述的方法的步骤。
9、通过采用上述技术方案,由于能够将所述待记账账户的订单和记账凭证存储到多个订单分片上,在满足预设汇总记账条件的情况下,从所述多个订单分片上读取相应批次的所存储的记账凭证,基于所读取的记账凭证进行汇总记账以实现跨数据库分片汇总记账,因此,一方面,能够获得成倍的写入性能提升,提高了汇总记账的性能,突破了相关技术中单数据库分片写入性能的限制,能够充分利用跨数据库分片的存储和处理能力,并且便于横向扩展,也即在增加数据库分片的情况下就能获得汇总记账能力的提升,另一方面,能够通过数据库的水平扩容来解决容量问题,突破了相关技术中单数据库分片的容量限制,再一方面,能够使得各个数据库分片上的数据存储量相对均衡,克服了相关技术中由于账户间动账流量不平均导致的数据倾斜问题,降低了后续的维护成本,提升了系统稳定性。
10、本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
1.一种汇总记账方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述待记账账户的订单和记账凭证存储到多个订单分片上,包括:
3.根据权利要求2所述的方法,其特征在于,所述汇总记账方法还包括:
4.根据权利要求2所述的方法,其特征在于,所述对所述订单进行幂等校验,包括:
5.根据权利要求1所述的方法,其特征在于,
6.根据权利要求5所述的方法,其特征在于,所述基于所读取的记账凭证进行汇总记账,包括:
7.根据权利要求6所述的方法,其特征在于,所述基于校验通过的记账凭证进行汇总记账,包括:
8.根据权利要求6所述的方法,其特征在于,所述汇总记账方法还包括:
9.根据权利要求8所述的方法,其特征在于,所述汇总记账方法还包括:
10.根据权利要求1所述的方法,其特征在于,所述汇总记账方法还包括:
11.根据权利要求1至10中任一项所述的方法,其特征在于,在所述将所述待记账账户的订单和记账凭证存储到多个订单分片上之前,所述汇总记账方法还包括:
12.根据权利要求11所述的方法,其特征在于,
13.根据权利要求12所述的方法,其特征在于,所述基于所述动账请求类型和所述待记账账户的账户余额信息,确定所述待记账账户的当前动态标识,包括:
14.根据权利要求12所述的方法,其特征在于,所述基于所述静态标识和所述当前动态标识,确定所述待记账账户当前是否能进行所述跨数据库分片汇总记账,包括:
15.一种汇总记账装置,其特征在于,包括:
16.一种计算机可读介质,其上存储有计算机程序,其特征在于,该计算机程序被处理装置执行时实现权利要求1-14中任一项所述方法的步骤。
17.一种电子设备,其特征在于,包括:
18.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1~14中任一项所述的方法的步骤。