CN113628053A - 一种交易余额的计算方法和装置 - Google Patents
一种交易余额的计算方法和装置 Download PDFInfo
- Publication number
- CN113628053A CN113628053A CN202111029387.XA CN202111029387A CN113628053A CN 113628053 A CN113628053 A CN 113628053A CN 202111029387 A CN202111029387 A CN 202111029387A CN 113628053 A CN113628053 A CN 113628053A
- Authority
- CN
- China
- Prior art keywords
- data storage
- data
- account
- storage area
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
Abstract
本申请提供了一种交易余额的计算方法,按照时间区间对应设置多个数据存储区域,每个数据存储区域对应一个时间区间,每个数据存储区域仅存储其对应时间区间内生成的交易数据,在获取到交易数据后,对于实时发生的交易数据按照生成的时间选择对应时间区间并存储到该时间区间对应的数据存储区域中,再该各个数据存储区域中对于各个账户分别进行差额汇总生成差额汇总数据,以基于各个数据存储区域的差额汇总计算得到每个账户的余额,当出现交易抹除导致数据变更时,也不会导致账户的余额受到影响,不需要针对抹除交易的全时段的大量数据整体从新计算余额,减小了数据处理量。
Description
技术领域
本申请涉及信息技术领域,更具体的说,是涉及一种交易余额的计算方法和装置。
背景技术
银行在约定时长内(如一日、一月或者指定日)都会对账户进行余额计算。由于业务需要,同一账户下的部分交易信息可能需要进行抹除操作,此时就需要对该笔交易产生的金额等数据进行抹除。因此,用于计算余额的数据是在不断变化之中的。
现有技术中,如果某笔交易发生抹账操作,在计算余额时,仅是基于抹除操作后剩余交易信息进行计算,并未考虑抹除交易时所产生的金额,而这导致计算的余额与真实余额不对应,在发生这种情况后,对于发送抹账操作的账户,需要使用该账户从交易发生时刻起的全部交易数据,重新进行余额计算,导致在发生抹账操作后,重新计算余额时数据庞大,计算效率低下的问题。
发明内容
有鉴于此,本申请提供了一种交易余额的计算方法,如下:
一种交易余额的计算方法,包括:
获取交易数据;
基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域,并存储所述交易数据,任一数据存储区域对应一时间区间,且任意两个数据存储区域对应的时间区间不重叠;
针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。
可选的,上述的方法,所述获取交易数据,包括:
获取总交易次数大于预设值的账户所对应的交易数据。
可选的,上述的方法,基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应目标数据存储区域,包括:
基于所述交易数据的生成时间大于等于第一时间区间的开始时间,且小于所述第一时间区间的结束时间,判定所述交易数据的生成时间属于第一时间区间;
选择与所述第一时间区间对应的第一数据存储区域作为目标数据存储区域。
可选的,上述的方法,基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应目标数据存储区域,包括:
基于所述交易数据的生成时间大于第二时间区间的开始时间且小于等于所述第二时间区间的结束时间,判定所述交易数据的生成时间属于第二时间区间;
选择与所述第二时间区间对应的第二数据存储区域作为目标数据存储区域。
可选的,上述的方法,获取交易数据之前,还包括:
将一个处理周期按照设定的时间间隔依次划分为至少两个时间区间,所述至少两个时间区间依次连续且不交叉,所述时间间隔的长度与所述数据存储区域所属的数据库的处理能力相关。
可选的,上述的方法,所述基于账户信息以及所述交易数据的发生额,针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据,包括:
基于所述交易数据的生成时间以及账户,依次对于所述至少两个数据存储区域中每个数据存储区域内同一账户的交易数据按照时间顺序排序;
基于所述交易数据的发生额以及时间顺序,对所述至少两个数据存储区域中每一数据存储区域内同一账户的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据。
可选的,上述的方法,所述根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额包括:
若所述数据存储区域是一个处理周期中首个时间区间对应的第一数据存储区域,将上一处理周期所述目标账户的账户余额与所述第一数据存储区域中所述目标账户的差额汇总数据相加,得到所述第一数据存储区域中所述目标账户的余额,所述目标账户是所述数据存储中涉及账户中的每个;
若所述数据存储区域不是第一数据存储区域,选择目标账户,将上一时间区间对应的数据存储区域中所述目标账户的余额与时间区间对应的数据存储区域中所述目标账户的差额汇总数据相加,得到本数据存储区域中所述目标账户的余额,直到计算得到所述第二数据存储区域中所述目标账户的余额,所述第二数据存储区域是当前处理周期中最后一个区间对应的数据存储区域。
可选的,上述的方法,还包括:
获取抹账事件,确定所述抹账事件的发生时刻以及涉及第一时刻第一账户生成的交易数据;
基于所述第一时刻属于第三时间区间,所述抹账时间的发生时刻属于第四时间区间,确定所述第三时间区间至所述第四时间区间对应的数据存储区域;
针对所述第三时间区间至所述第四时间区间对应的数据存储区域中每一数据存储区域内所述第一账户的交易数据进行差额汇总,生成所述数据存储区域中第一账户的差额汇总数据,所述第一账户的交易数据的状态包括抹除状态和非抹除状态;
基于第三时间区间前一个时间区间中第一账户余额与至当前处理周期中最后一个时间区间对应的数据存储区域中每一数据存储区域内所述第一账户的差额汇总数据相加,得到当前处理周期所述第一账户的余额。
一种交易余额的计算装置,包括:
获取模块,用于获取交易数据;
选择模块,用于基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域,并存储所述交易数据,任一数据存储区域对应一时间区间,且任意两个数据存储区域对应的时间区间不重叠;
汇总模块,用于针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
余额计算模块,用于根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。
可选的,上述的装置,还包括:
预处理模块,用于将一个处理周期按照设定的时间间隔依次划分为至少两个时间区间,所述至少两个时间区间依次连续且不交叉,所述时间间隔的长度与所述数据存储区域所属的数据库的处理能力相关。
经由上述的技术方案可知,与现有技术相比,本申请提供了一种交易余额的计算方法,包括:获取交易数据;基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域,并存储所述交易数据,任一数据存储区域对应一时间区间,且任意两个数据存储区域对应的时间区间不重叠;针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。本方案中,按照时间区间对应设置多个数据存储区域,每个数据存储区域对应一个时间区间,每个数据存储区域仅存储其对应时间区间内生成的交易数据,在获取到交易数据后,对于实时发生的交易数据按照生成的时间选择对应时间区间并存储到该时间区间对应的数据存储区域中,再该各个数据存储区域中对于各个账户分别进行差额汇总生成差额汇总数据,以基于各个数据存储区域的差额汇总计算得到每个账户的余额,当出现交易抹除导致数据变更时,也不会导致账户的余额受到影响,不需要针对抹除交易的全时段的大量数据整体从新计算余额,减小了数据处理量。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本申请提供的一种交易余额的计算方法实施例1的流程图;
图2是本申请提供的一种交易余额的计算方法实施例2的流程图;
图3是本申请提供的一种交易余额的计算方法实施例3的流程图;
图4是本申请提供的一种交易余额的计算方法实施例4的流程图;
图5是本申请提供的一种交易余额的计算方法实施例4中时间分片示意图;
图6是本申请提供的一种交易余额的计算方法实施例5的流程图;
图7是本申请提供的一种交易余额的计算方法实施例5中时间分片示意图;
图8是本申请提供的一种交易余额的计算方法实施例6的流程图;
图9是本申请提供的一种交易余额的计算方法实施例7的流程图;
图10是本申请提供的一种交易余额的计算方法实施例7中余额示意图;
图11是本申请提供的一种交易余额的计算方法实施例8的流程图;
图12是本申请提供的一种交易余额的计算装置实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1所示的,为本申请提供的一种交易余额的计算方法实施例1的流程图,该方法应用于一电子设备,该电子设备作为银行核心业务系统的一功能服务器,该方法包括以下步骤:
步骤S101:获取交易数据;
其中,在银行业务执行过程中,会生成相应的交易数据,本方案中,对于银行业务执行生成的交易数据进行获取并处理。
其中,每条交易数据均会具有发生额,借记或者是贷记。
步骤S102:基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域,并存储所述交易数据;
其中,任一数据存储区域对应一时间区间,且任意两个数据存储区域对应的时间区间不重叠。
其中,按照交易数据的生成时间,从按照时间区间划分的数据存储区域中选择相应的目标数据存储区域,并将该交易数据发送到该目标数据存储区域存储。
其中,电子设备中预设有分发规则,且为了实现将交易数据分发,还设置有多个数据存储区域,该数据存储区域可以是属于同一数据库。
例如,该数据库可以是Oracle、DB2、Mysql等,本申请中不对于采用的数据库种类做限制。
具体的,在数据库中划分出多个数据存储区域,每个数据存储区域对应一个时间区间,在获取到交易数据后,将交易数据发送到其生成时间所属的数据存储区域中。
步骤S103:针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
其中,在银行系统需要对于账户的交易数据进行差额汇总。
具体的,该差额汇总是以计算借贷差额的方式计算,具体的是以借记发生额减去贷记发生额的合计的形式完成。
本方案中,对于每个数据存储区域内同一账户的交易数据进行差额汇总,生成该数据存储区域内每个账户的差额汇总数据。
相应的,该差额汇总数据的个数与数据存储区域的个数对应。
例如,如果存在10个数据存储区域,则最终针对每个账户生成10个差额汇总数据,如果存在24个数据存储区域,则最终针对每个账户生成24个差额汇总数据。
步骤S104:根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。
其中,每个数据存储区域的差额汇总数据表示了该数据存储区域对应的时间区间内每个账户的变化情况,本方案中,针对每个账户,分别计算其在多个时间区间分别的差额汇总数据,并得到该账户的余额。
后续即使发生账物抹除,基于抹除的账物所在的时间区间,确定对应的数据存储区域,只需要对于该对应的数据存储区域进行差额汇总数据即可,无需对于从被抹除账户的生成时间后各条交易数据依次进行计算,减小了数据处理量。
综上,本实施例提供的一种交易余额的计算方法,本方案中,按照时间区间对应设置多个数据存储区域,每个数据存储区域对应一个时间区间,每个数据存储区域仅存储其对应时间区间内生成的交易数据,在获取到交易数据后,对于实时发生的交易数据按照生成的时间选择对应时间区间并存储到该时间区间对应的数据存储区域中,再该各个数据存储区域中对于各个账户分别进行差额汇总生成差额汇总数据,以基于各个数据存储区域的差额汇总计算得到每个账户的余额,当出现交易抹除导致数据变更时,也不会导致账户的余额受到影响,不需要针对抹除交易的全时段的大量数据整体从新计算余额,减小了数据处理量。
如图2所示的,为本申请提供的一种交易余额的计算方法实施例2的流程图,该方法包括以下步骤:
步骤S201:获取总交易次数大于预设值的账户所对应的交易数据;
其中,在业务执行时生成交易数据,该交易数据中携带有账户信息,即该交易数据是由哪个账户生成。
针对特定的账户的交易数据进行处理,具体的,该特定的账户可以是每天交易量巨大的账户,即总交易次数大于预设值的账户,该预设值可以根据实际情况设置,如20、50、100或者是1000等,本申请中不对于该预设值的取值做限制。
由于交易量巨大的账户,每天的交易数据非常大,一旦发生抹账,需要对于其大量的交易数据进行从新计算,计算量较大,因此,本申请中对于交易量巨大的账户的交易数据进行处理。
具体实施中,银行系统针对该类账户添加特殊标记以区分。
具体的,从业务执行生成的大量交易数据中,筛选具有预设标记的交易数据,实现对于特定账户的交易数据进行筛选。
需要说明的是,本方案中,是针对特定的账户的交易数据进行筛选以进行后续的分发处理的过程,以保证进行大量交易的账户的交易数据能够被分发存储,且进行差额汇总处理,防止该账户的交易数据被抹账后还要对于全部的交易数据从新计算,减小数据处理量。
步骤S202:基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域,并存储所述交易数据;
步骤S203:针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
步骤S204:根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。
其中,步骤S202-204与实施例1中的步骤S102-104一致,本实施例中不做赘述。
综上,本实施例提供的一种交易余额的计算方法中,获取总交易次数大于预设值的账户所对应的交易数据。本方案中,仅是对于特定进行大量交易的用户的交易数据进行筛选执行分发以及差额汇总处理,防止该账户的交易数据被抹账后还要全部从新计算,减小数据处理量。
如图3所示的,为本申请提供的一种交易余额的计算方法实施例5的流程图,该方法包括以下步骤:
步骤S301:将一个处理周期按照设定的时间间隔依次划分为至少两个时间区间;
其中,所述至少两个时间区间依次连续且不交叉,所述时间间隔的长度与所述数据存储区域所属的数据库的处理能力相关。
其中,两个切换日期之间的时间是一个处理周期,在每个切换日期,基于数据库中的交易数据进行统计一次账户余额。
具体的,按照设置的周期,对于一处理周期内的交易数据进行账户统计,一个处理周期可以是24小时、一周7天、半月15天等,周期切换时间点可以是任意时刻,本申请不对于周期的具体时长以及切换时间点的具体时刻做限制。本申请中,是以一天24小时为一个周期、且周期切换时间是24点为例进行解释。
其中,按照预设的分片时间段,将一天24小时划分为多个分片时间区间,每个分片时间区间是半开半闭的区间,如左开右闭或者是左闭右开等方式,以确保数据无交叉。如30分钟为一个时间分片,则一天24小时划分为48个时间分片;如2个小时为一个时间分片,则一天24小时划分为12个时间分片。
作为一个示例,左开右闭的时间区间是(00:00:00-00:30:00];左闭右开的时间区间是[00:00:00-01:00:00)。
具体的,划分分片时间区间可以是约定的时间段,也可以是时间点,如1点、2点、…11点等。
其中,时间段可以根据实际情况进行设置,如2小时、3小时、10分钟、20分钟。
具体的,划分分片时间区间可以是约定的时间段,也可以是时间点,如1点、2点、…11点等。
其中,时间段可以根据实际情况进行设置,如2小时、3小时、10分钟、20分钟。
需要说明的是,该划分分片时间区间的条件是基于数据库的类型和处理能力而定,例如,传统的Oracle、DB2等处理能力较强,则可以把时间间隔设定的大一些,例如2小时、3小时等,而针对数据库处理能力较差的数据库如Mysql等则可以把时间间隔设定的小一些如1小时、30分钟等。
步骤S302:获取交易数据;
步骤S303:基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域,并存储所述交易数据,任一数据存储区域对应一时间区间,且任意两个数据存储区域对应的时间区间不重叠;
步骤S304:针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
步骤S305:根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。
其中,步骤S302-305与实施例1中的步骤S101-104一致,本实施例中不做赘述。
综上,本实施例提供的一种交易余额的计算方法中,还包括:将一个处理周期按照设定的时间间隔依次划分为至少两个时间区间,所述至少两个时间区间依次连续且不交叉,所述时间间隔的长度与所述数据存储区域所属的数据库的处理能力相关。本方案中,预先对于处理周期划分为多个时间区间,且一个时间区间对应一个数据存储区域,为后续按照交易数据的生成时间选择相应的数据存储区域进行存储提供基础。
如图4所示的,为本申请提供的一种交易余额的计算方法实施例4的流程图,该方法包括以下步骤:
步骤S401:获取交易数据;
其中,步骤S401与实施例1中的步骤S101一致,本实施例中不做赘述。
步骤S402:基于所述交易数据的生成时间大于等于第一时间区间的开始时间,且小于所述第一时间区间的结束时间,判定所述交易数据的生成时间属于第一时间区间;
其中,交易数据中携带有时间戳,该时间戳表征了交易数据生成的时间,即交易发生的时间。
具体的,基于该时间戳分析得到该交易数据的生成时间,将该交易数据生成时间依次与各个时间区间进行比对,确定该交易数据生成时间所属的时间区间。
具体的,本实施例中,分片时间区间采用左闭右开的方式,如30分钟为一个时间分片,则一天24小时划分为[00:00:00-00:30:00), [00:30:00-01:00:00),[01:00:00-01:30:00),……,[23:30:00-24:00:00)一共48个时间分片。如2个小时为一个时间分片,则一天24小时划分为[00:00:00-02:00:00),[02:00:00-04:00:00),……,[22:00:00-24:00:00)一共12个时间分片。
如图5所示的为时间分片示意图,以30分钟为一个时间段进行分分片,一天的24小时一共分为48个时间分片分别为[00:00:00-00:30:00),[00:30:00-01:00:00],[01:00:00-01: 30:00),……,[23:30:00-24:00:00)。
具体的,基于分析得到的该交易数据的生成时间,确定其所属的分片时间区间,如该交易数据的生成时间为10:23:19,其所属的分片时间区间是[10:00:00-10: 30:00),后续步骤中,将该交易数据发送给[10:00:00-10: 30:00)对应的数据存储区域。
步骤S403:选择与所述第一时间区间对应的第一数据存储区域作为目标数据存储区域;
其中,在数据库中针对各个分片时间区间划分有多个数据存储区域,在任意分片时间区间内生成的交易数据,对应分发到相应的数据存储区域中。
具体的,在确定了交易数据所属的分片时间区间后,基于分片时间区间与数据存储区域的对应关系,确定该分片时间区间对应的数据存储区域,即分析得到该交易数据的生成时间对应的数据存储区域,将该数据存储区域作为目标数据存储区域。
其中,将该交易数据分发到相应的目标数据存储区域中。
步骤S404:存储所述交易数据;
需要说明的是,本申请中的S401-405步骤可以是日间银行系统运行过程中实时执行,如10:23:19生成的交易数据,在该交易数据生成后,确定其所属的分片时间区间是[10:00:00-10: 30:00),将该交易数据发送给[10:00:00-10: 30:00)对应的数据存储区域。
其中,日间银行系统中生成海量无序的交易数据,将其中满足条件(如总交易次数大于预设值的账户)的交易数据分发到相应时间区间对应的数据存储区域中存储。
具体实施中,交易数据是以MQ(Message queue,消息队列)或是文件方式发送给应用本方案的分发功能服务器,该服务器将交易数据发送给数据库中相应的数据存储分片区。
需要说明的是,该功能服务器也可以执行除了分发交易数据外的其他功能,本申请中不对于功能服务器所能执行的功能做限制。
步骤S405:针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
步骤S406:根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。
其中,步骤S405-406与实施例1中的步骤S103-104一致,本实施例中不做赘述。
综上,本实施例提供的一种交易余额的计算方法中,基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应目标数据存储区域,包括:基于所述交易数据的生成时间大于等于第一时间区间的开始时间,且小于所述第一时间区间的结束时间,判定所述交易数据的生成时间属于第一时间区间;选择与所述第一时间区间对应的第一数据存储区域作为目标数据存储区域。本方案中,时间区间划分采用左闭右开,能够基于交易数据的生成时间选择相应的目标数据存储区域,以实现将交易数据分发到相应目标数据存储区域的目的。
如图6所示的,为本申请提供的一种交易余额的计算方法实施例5的流程图,该方法包括以下步骤:
步骤S601:获取交易数据;
其中,步骤S601与实施例1中的步骤S101一致,本实施例中不做赘述。
步骤S602:基于所述交易数据的生成时间大于第二时间区间的开始时间且小于等于所述第二时间区间的结束时间,判定所述交易数据的生成时间属于第二时间区间;
其中,交易数据中携带有时间戳,该时间戳表征了交易数据生成的时间,即交易发生的时间。
具体的,基于该时间戳分析得到该交易数据的生成时间,将该交易数据生成时间依次与各个时间区间进行比对,确定该交易数据生成时间所属的时间区间。
具体的,本实施例中,分片时间区间采样左开右闭的方式,如30分钟为一个时间分片,则一天24小时划分为(00:00:00-00:30:00],(00:30:00-01:00:00],(01:00:00-01:30:00],……,(23:30:00-24:00:00]一共48个时间分片。如2个小时为一个时间分片,则一天24小时划分为(00:00:00-02:00:00],(02:00:00-04:00:00],……,(22:00:00-24:00:00]一共12个时间分片。
如图7所示的为时间分片示意图,以30分钟为一个时间段进行分分片,一天的24小时一共分为48个时间分片分别为(00:00:00-00:30:00],(00:30:00-01:00:00],(01:00:00-01: 30:00],……,(23:30:00-24:00:00]。
需要说明的是,该划分分片时间区间的条件是基于数据库的类型和处理能力而定,例如,传统的Oracle、DB2等处理能力较强,则可以把时间间隔设定的大一些,例如2小时、3小时等,而针对数据库处理能力较差的数据库如Mysql等则可以把时间间隔设定的小一些如1小时、30分钟等。
具体的,基于分析得到的该交易数据的生成时间,确定其所属的分片时间区间,如该交易数据的生成时间为10:23:19,其所属的分片时间区间是(10:00:00-10: 30:00],后续步骤中,将该交易数据发送给(10:00:00-10: 30:00]对应的数据存储区域。
步骤S603:选择与所述第二时间区间对应的第二数据存储区域作为目标数据存储区域;
其中,在数据库中针对各个分片时间区间划分有多个数据存储区域,在任意分片时间区间内生成的交易数据,对应分发到相应的数据存储区域中。
具体的,在确定了交易数据所属的分片时间区间后,基于分片时间区间与数据存储区域的对应关系,确定该分片时间区间对应的数据存储区域,即分析得到该交易数据的生成时间对应的数据存储区域,将该数据存储区域作为目标数据存储区域。
其中,将该交易数据分发到相应的目标数据存储区域中。
步骤S604:存储所述交易数据;
需要说明的是,本申请中的S601-605步骤可以是日间银行系统运行过程中实时执行,如10:23:50生成的交易数据,在该交易数据生成后,确定其所属的分片时间区间是(10:00:00-10: 30:00],将该交易数据发送给(10:00:00-10: 30:00]对应的数据存储区域。
其中,日间银行系统中生成海量无序的交易数据,将其中满足条件(如总交易次数大于预设值的账户)的交易数据分发到相应时间区间对应的数据存储区域中存储。
具体实施中,交易数据是以MQ或是文件方式发送给应用本方案的分发功能服务器,该服务器将交易数据发送给数据库中相应的数据存储分片区。
需要说明的是,该功能服务器也可以执行除了分发交易数据外的其他功能,本申请中不对于功能服务器所能执行的功能做限制。
步骤S605:针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
步骤S606:根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。
其中,步骤S605-606与实施例1中的步骤S103-104一致,本实施例中不做赘述。
综上,本实施例提供的一种交易余额的计算方法中,基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应目标数据存储区域,包括:基于所述交易数据的生成时间大于第二时间区间的开始时间且小于等于所述第一时间区间的结束时间,判定所述交易数据的生成时间属于第二时间区间;选择与所述第二时间区间对应的第二数据存储区域作为目标数据存储区域。本方案中,时间区间划分采用左开右闭,能够基于交易数据的生成时间选择相应的目标数据存储区域,以实现将交易数据分发到相应目标数据存储区域的目的。
如图8所示的,为本申请提供的一种交易余额的计算方法实施例6的流程图,该方法包括以下步骤:
步骤S801:获取交易数据;
步骤S802:基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域;
步骤S803:存储所述交易数据,任一数据存储区域对应一时间区间,且任意两个数据存储区域对应的时间区间不重叠;
其中,步骤S801-803与实施例1中的步骤S101-103一致,本实施例中不做赘述。
步骤S804:基于所述交易数据的生成时间以及账户,依次对于所述至少两个数据存储区域中每个数据存储区域内同一账户的交易数据按照时间顺序排序;
具体的,在任何一个数据存储区域中,对于分发到该数据存储区域的交易数据,按照时间顺序进行排序,而各个数据存储区域是按照时间顺序进行划分对应关系的,则每个数据存储区域内同一账户的交易数据均按照时间顺序进行排序,即可实现对于海量的交易数据进行排序。
其中,按照账户对于每个数据存储区域内存储中属于该账户的交易数据进行筛选,并在每个数据存储区域中的该账户的交易数据按照时间顺序进行排序。
例如,有账户A和B,其中,(00:00:00-00:30:00]对应的数据存储区域中分别有该账户A的交易数据200个,账户B的交易数据124个,对于该账户A的交易数据按照交易数据的生成时间先后进行排序,对于账户B的交易数据按照交易数据的生成时间先后进行排序。相应的,对于其他数据存储中的每个账户的交易数据按照生成时间先后进行排序。
步骤S805:基于所述交易数据的发生额以及时间顺序,对所述至少两个数据存储区域中每一数据存储区域内同一账户的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
其中,按照同一账户交易数据的发生时间进行排序后,按照交易数据发生的先后顺序,将同一数据存储中区域中的同一账户交易数据的发生额进行差额汇总。
具体的,对于每个账户依次对于其在每个数据存储区域中的交易数据分别进行差额汇总,得到时间区间中该账户的差额汇总。
需要说明的是,该步骤S8043和805中进行排序以及差额汇总的过程,可以是在业务执行少的时间(如晚上)执行,以降低业务执行多的时间服务器的数据处理负担。
步骤S806:根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。
其中,步骤S806与实施例1中的步骤S104一致,本实施例中不做赘述。
综上,本实施例提供的一种交易余额的计算方法中,基于账户信息以及所述交易数据的发生额,针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据,包括:基于所述交易数据的生成时间以及账户,依次对于所述至少两个数据存储中每个数据存储区域内同一账户的交易数据按照时间顺序排序;基于所述交易数据的发生额以及时间顺序,对所述至少两个数据存储区域中每一数据存储区域内同一账户的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据。本方案中,对于每个数据存储区域内的交易数据,针对不同的账户按照时间先后进行排序,再对于同一账户的交易数据进行差额汇总,得到该数据存储区域中每个账户的差额汇总数据,以为通过该账户的余额提供依据。
如图9所示的,为本申请提供的一种交易余额的计算方法实施例7的流程图,该方法包括以下步骤:
步骤S901:获取交易数据;
步骤S902:基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域,并存储所述交易数据;
步骤S903:针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
其中,步骤S901-903与实施例1中的步骤S101-103一致,本实施例中不做赘述。
步骤S904:若所述数据存储区域是一个处理周期中首个时间区间对应的第一数据存储区域,将上一处理周期所述目标账户的账户余额与所述第一数据存储区域中所述目标账户的差额汇总数据相加,得到所述第一数据存储区域中所述目标账户的余额,所述目标账户是所述数据存储中涉及账户中的每个;
具体的,本申请中,针对某一账号进行余额的计算,需要结合上一周期的账户余额。
其中,当该数据存储区域对应的时间区间是一个处理周期中的首个时间区间,则将该数据存储中的差额汇总数据与上一周期的账户余额相加,得到的就是该数据存储区域中该目标账户的余额。
步骤S905:若所述数据存储区域不是第一数据存储区域,选择目标账户,将上一时间区间对应的数据存储区域中所述目标账户的余额与时间区间对应的数据存储区域中所述目标账户的差额汇总数据相加,得到本数据存储区域中所述目标账户的余额,直到计算得到所述第二数据存储区域中所述目标账户的余额,所述第二数据存储区域是当前处理周期中最后一个区间对应的数据存储区域。
其中,当该数据存储区域对应的时间区间不是当前处理周期中的首个时间区间,则将该数据存储中的差额汇总数据与时间区间的数据存储区域的余额及相加,得到的就是该数据存储区域中该目标账户的余额。
按照时间区间的先后顺序,对于其对应的数据存储区域的余额进行计算,直至计算到当前处理周期中最后一个时间区间对应的数据存储区域的余额,该余额就是本处理周期该账户的余额。
具体实施中,在银行系统的明细表的空余表项中添加计算得到每个时间区间的余额。
具体实施中,该空余表项具体可以是明细表的表尾,将该余额插入明细表的表尾表项中。
需要说明的是,是在相应账户的明细表中添加针对该账户计算得到的余额。
具体的,明细表中的针对首个时间区间对应的数据存储区域的对应的余额数据的计算方式如下:上一处理周期余额+本时段差额汇总数据,针对非首个时间区间对应的每个数据存储区域的对应的余额数据的计算方式如下:上一时段余额+本时段差额汇总数据。
如图10所示的为余额示意图,其中包括多个数据存储区域,对应的分片时间区间分别为(00:00:00-00:30:00],(00:30:00-01:00:00],(01:00:00-01: 30:00],……,(23:30:00-24:00:00],各个对应的数据存储区域中交易数据差额汇总分别为E、F、G、H、I。而各个数据存储区域对应的余额是上一处理周期的余额+E,上一处理周期的余额+E+F、上一处理周期的余额+E+F+G、上一处理周期的余额+E+F+G+H以及上一处理周期的余额+E+F+G+H+I。
综上,本实施例提供的一种交易余额的计算方法中,所述依次记录所述至少两个数据存储区域的差额汇总数据,包括:按照分片时间的顺序,将所述至少两个数据存储区域对应的差额汇总数据依次存储到预设明细表中。本方案中,按照分片时间的先后顺序,将各个数据存储区域对应的差额汇总数据存储到明细表中,为后续查找提供依据。
如图11所示的,为本申请提供的一种交易余额的计算方法实施例8的流程图,该方法包括以下步骤:
步骤S1101:获取交易数据;
步骤S1102:基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域,并存储所述交易数据;
步骤S1103:针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
步骤S1104:若所述数据存储区域是一个处理周期中首个时间区间对应的第一数据存储区域,将上一处理周期所述目标账户的账户余额与所述第一数据存储区域中所述目标账户的差额汇总数据相加,得到所述第一数据存储区域中所述目标账户的余额,所述目标账户是所述数据存储中涉及账户中的每个;
步骤S1105:若所述数据存储区域不是第一数据存储区域,选择目标账户,将上一时间区间对应的数据存储区域中所述目标账户的余额与时间区间对应的数据存储区域中所述目标账户的差额汇总数据相加,得到本数据存储区域中所述目标账户的余额,直到计算得到所述第二数据存储区域中所述目标账户的余额,所述第二数据存储区域是当前处理周期中最后一个区间对应的数据存储区域;
其中,步骤S1101-1105与实施例7中的步骤S901-905一致,本实施例中不做赘述。
步骤S1106:获取抹账事件,确定所述抹账事件的发生时刻以及涉及第一时刻第一账户生成的交易数据;
其中,在统计账户余额时,确定发生抹账事件。
具体实施中,基于前述步骤S1104-1105中的步骤计算得到的余额与账户实际余额不同,可以确定发生抹账,调用记录确定抹账事件;也可以在统计账户余额之前,检查是否发生抹账,如果未发生抹账,则执行步骤S1104-1105统计余额,如果发生抹账,则执行步骤S1106,可以根据实际情况选择确定是否抹账的方式,本申请中不做限制。
需要说明的是,对于某一交易数据进行抹账,是将该交易数据的状态修改为抹除状态,而在进行差额汇总时,状态为抹除状态的交易数据是不参与计算的,因此导致基于前述步骤S1104-1105计算得到的余额会与账户实际余额不同。
其中,在获取抹账事件后,基于该抹账事件中的内容确定该抹账事件是对于第一时刻第一账户生成的交易数据抹除,而且,确定该抹账事件的发生时刻。
步骤S1107:基于所述第一时刻属于第三时间区间、所述抹账时间的发生时刻属于第四时间区间,确定所述第三时间区间至所述第四时间区间对应的数据存储区域;
其中,该第三时间区间可以与第四时间区间相同,即在同一时间区间发生了交易数据以及对于该交易数据的抹除操作,二者也可以不同,即在一个时间区间发生了交易数据,而在后续的某一个时间区间对于该交易数据进行抹除。
其中,确定该被抹除的交易数据生成时刻是第一时刻,该第一时刻属于第三时间区间,而抹除事件的发生时刻属于第四时间区间,确定该第三时间区间至第四时间区间对应的数据存储区域。
例如,该抹除的交易数据是发生在20:11:23,抹账事件发生在23:05:00,则确定该交易数据所属事件区间是[20:00:00-20: 30:00),而抹账事件的发生时刻所属时间区间是[23:00:00-23: 30:00)。
该抹除事件影响的数据存储区域包括:[20:00:00-20: 30:00)、[20:30:00-21:00:00)、[21:00:00-21: 30:00)、[21:30:00-22: 00:00)、[22:00:00-22: 30:00)、[22:30:00-23: 00:00)[23:00:00-23: 30:00)一共7个时间区间对应的数据存储区域。
步骤S1108:针对所述第三时间区间至所述第四时间区间对应的数据存储区域中每一数据存储区域内所述第一账户的交易数据进行差额汇总,生成所述数据存储区域中第一账户的差额汇总数据,所述第一账户的交易数据的状态包括抹除状态和非抹除状态;
其中,对于该第三时间区间至第四时间区间之间所有的时间区间对应的数据存储区域中的每一个,对于其中该第一账户所有的交易数据进行差额汇总,该第一账户所有的交易数据包括抹除状态的交易数据和非抹除状态的交易数据。
其中,该步骤S1108中,将该抹除事件涉及的全部时间区间对应的数据存储区域中的全部交易数据进行差额汇总,未遗漏抹除状态的交易数据,实现了各个时间区间中全部的交易数据计算,因此,每个数据存储区域的差额汇总数据,是准确的数据。
步骤S1109:基于第三时间区间前一个时间区间中第一账户余额与至当前处理周期中最后一个时间区间对应的数据存储区域中每一数据存储区域内所述第一账户的差额汇总数据相加,得到当前处理周期所述第一账户的余额。
其中,第三时间区间前一个时间区间未受到抹账事件的影响,该区间的数据存储区域的对应的第一账户金额准确。
将该第一账户金额,依次与第三时间区间到当前处理周期最后一个时间区间对应的数据存储区域中的差额汇总相加,得到当前处理周期中该第一账户的余额。
例如,[19:30:00-20: 00:00)的第一账户余额是A,从新计算如下 [20:00:00-20:30:00)、[20:30:00-21: 00:00)、[21:00:00-21: 30:00)、[21:30:00-22: 00:00)、[22:00:00-22: 30:00)、[22:30:00-23: 00:00)[23:00:00-23: 30:00)一共7个时间区间对应的数据存储区域中,第一账户的交易数据,该交易数据的状态包括抹除状态和非抹除状态,得到的差额汇总数据分别为J、K、L、M、O和P,计算当前处理周期中该第一账户的余额为A+J+K+L+M+O+P。
需要说明的是,受到抹账事件影响的各个数据存储区域的差额汇总数据准确,而且未受到抹账事件影响的数据存储区域的差额汇总数据准确,则基于上述差额汇总数据计算得到的当前周期的第一账户的余额也准确,与账户实际余额相同。
综上,本实施例提供的一种交易余额的计算方法中,还包括:获取抹账事件,确定所述抹账事件的发生时刻以及涉及第一时刻第一账户生成的交易数据;基于所述第一时刻属于第三时间区间,所述抹账时间的发生时刻属于第四时间区间,确定所述第三时间区间至所述第四时间区间对应的数据存储区域;针对所述第三时间区间至所述第四时间区间对应的数据存储区域中每一数据存储区域内所述第一账户的交易数据进行差额汇总,生成所述数据存储区域中第一账户的差额汇总数据,所述第一账户的交易数据的状态包括抹除状态和非抹除状态;基于第三时间区间前一个时间区间中第一账户余额与至当前处理周期中最后一个时间区间对应的数据存储区域中每一数据存储区域内所述第一账户的差额汇总数据相加,得到当前处理周期所述第一账户的余额。。本方案中,当某一账户发生抹账事件时,对于抹除的交易数据生成时间至抹账事件的发生时刻之间涉及的各个时间区间对应的数据存储区域从新进行差额汇总计算,计算的数据包括该账户抹除状态的交易数据和非抹除状态的交易数据,未遗漏抹除状态的交易数据,实现了各个时间区间中全部的交易数据计算,因此,能够针对每个数据存储区域得到准确的差额汇总数据,最终得到的当前处理周期中该第一账户的余额也是当前处理周期中生成的全部交易数据计算得到,该余额准确。
与上述本申请提供的一种交易余额的计算方法实施例相对应的,本申请还提供了应用该交易余额的计算方法的装置实施例。
如图12所示的为本申请提供的一种交易余额的计算装置实施例的结构示意图,该装置包括以下结构:获取模块1201、选择模块1202、汇总模块1203和余额计算模块1204;
其中,获取模块1201,用于获取交易数据;
其中,选择模块1202,用于基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域,并存储所述交易数据,任一数据存储区域对应一时间区间,且任意两个数据存储区域对应的时间区间不重叠;
其中,汇总模块1203,用于针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
其中,余额计算模块1204,用于根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。
可选的,上述的装置,该获取模块具体用于:
获取总交易次数大于预设值的账户所对应的交易数据。
可选的,上述的装置,该选择模块用于:
基于所述交易数据的生成时间大于等于第一时间区间的开始时间,且小于所述第一时间区间的结束时间,判定所述交易数据的生成时间属于第一时间区间;
选择与所述第一时间区间对应的第一数据存储区域作为目标数据存储区域。
可选的,上述的装置,该选择模块用于:
基于所述交易数据的生成时间大于第二时间区间的开始时间且小于等于所述第一时间区间的结束时间,判定所述交易数据的生成时间属于第二时间区间;
选择与所述第二时间区间对应的第二数据存储区域作为目标数据存储区域。
可选的,上述的装置,还包括:
预处理模块,将一个处理周期按照设定的时间间隔依次划分为至少两个时间区间,所述至少两个时间区间依次连续且不交叉,所述时间间隔的长度与所述数据存储区域所属的数据库的处理能力相关。
可选的,上述的装置,该汇总模块用于:
基于所述交易数据的生成时间以及账户,依次对于所述至少两个数据存储区域中每个数据存储区域内同一账户的交易数据按照时间顺序排序;
基于所述交易数据的发生额以及时间顺序,对所述至少两个数据存储区域中每一数据存储区域内同一账户的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据。
可选的,上述的装置,该余额计算模块用于:
若所述数据存储区域是一个处理周期中首个时间区间对应的第一数据存储区域,将上一处理周期所述目标账户的账户余额与所述第一数据存储区域中所述目标账户的差额汇总数据相加,得到所述第一数据存储区域中所述目标账户的余额,所述目标账户是所述数据存储中涉及账户中的每个;
若所述数据存储区域不是第一数据存储区域,选择目标账户,将上一时间区间对应的数据存储区域中所述目标账户的余额与时间区间对应的数据存储区域中所述目标账户的差额汇总数据相加,得到本数据存储区域中所述目标账户的余额,直到计算得到所述第二数据存储区域中所述目标账户的余额,所述第二数据存储区域是当前处理周期中最后一个区间对应的数据存储区域。
可选的,上述的装置,还包括:
确定模块,用于获取抹账事件,确定所述抹账事件的发生时刻以及涉及第一时刻第一账户生成的交易数据;
分析模块,用于基于所述第一时刻属于第三时间区间,所述抹账时间的发生时刻属于第四时间区间,确定所述第三时间区间至所述第四时间区间对应的数据存储区域;
所述汇总模块,还用于针对所述第三时间区间至所述第四时间区间对应的数据存储区域中每一数据存储区域内所述第一账户的交易数据进行差额汇总,生成所述数据存储区域中第一账户的差额汇总数据,所述第一账户的交易数据的状态包括抹除状态和非抹除状态;
所述余额计算模块,还用于基于第三时间区间前一个时间区间中第一账户余额与至当前处理周期中最后一个时间区间对应的数据存储区域中每一数据存储区域内所述第一账户的差额汇总数据相加,得到当前处理周期所述第一账户的余额。
综上,本实施例提供的一种交易余额的计算装置,包括:获取模块,用于获取交易数据;分发模块,用于按照预设的分发规则对于所述交易数据分发到至少两个数据存储区域;汇总模块,用于依次对所述至少两个数据存储区域内的交易数据进行差额汇总,生成差额汇总数据;记录模块,用于依次记录所述至少两个数据存储区域的差额汇总数据。本方案中,在获取到交易数据后,对于实时发生的交易数据分发给多个数据存储区域,以在该各个数据存储区域中分别进行差额汇总生成差额汇总数据,防止由于出现交易抹除导致的大量数据变更需要从新计算余额的问题,减小了数据处理量。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的装置而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所提供的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所提供的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种交易余额的计算方法,其特征在于,包括:
获取交易数据;
基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域,并存储所述交易数据,任一数据存储区域对应一时间区间,且任意两个数据存储区域对应的时间区间不重叠;
针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。
2.根据权利要求1所述的方法,其特征在于,所述获取交易数据,包括:
获取总交易次数大于预设值的账户所对应的交易数据。
3.根据权利要求1所述的方法,其特征在于,基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应目标数据存储区域,包括:
基于所述交易数据的生成时间大于等于第一时间区间的开始时间,且小于所述第一时间区间的结束时间,判定所述交易数据的生成时间属于第一时间区间;
选择与所述第一时间区间对应的第一数据存储区域作为目标数据存储区域。
4.根据权利要求1所述的方法,其特征在于,基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应目标数据存储区域,包括:
基于所述交易数据的生成时间大于第二时间区间的开始时间且小于等于所述第二时间区间的结束时间,判定所述交易数据的生成时间属于第二时间区间;
选择与所述第二时间区间对应的第二数据存储区域作为目标数据存储区域。
5.根据权利要求1所述的方法,其特征在于,获取交易数据之前,还包括:
将一个处理周期按照设定的时间间隔依次划分为至少两个时间区间,所述至少两个时间区间依次连续且不交叉,所述时间间隔的长度与所述数据存储区域所属的数据库的处理能力相关。
6.根据权利要求1所述的方法,其特征在于,所述基于账户信息以及所述交易数据的发生额,针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据,包括:
基于所述交易数据的生成时间以及账户,依次对于所述至少两个数据存储区域中每个数据存储区域内同一账户的交易数据按照时间顺序排序;
基于所述交易数据的发生额以及时间顺序,对所述至少两个数据存储区域中每一数据存储区域内同一账户的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据。
7.根据权利要求1所述的方法,其特征在于,所述根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额包括:
若所述数据存储区域是一个处理周期中首个时间区间对应的第一数据存储区域,将上一处理周期所述目标账户的账户余额与所述第一数据存储区域中所述目标账户的差额汇总数据相加,得到所述第一数据存储区域中所述目标账户的余额,所述目标账户是所述数据存储中涉及账户中的每个;
若所述数据存储区域不是第一数据存储区域,选择目标账户,将上一时间区间对应的数据存储区域中所述目标账户的余额与时间区间对应的数据存储区域中所述目标账户的差额汇总数据相加,得到本数据存储区域中所述目标账户的余额,直到计算得到所述第二数据存储区域中所述目标账户的余额,所述第二数据存储区域是当前处理周期中最后一个区间对应的数据存储区域。
8.根据权利要求7所述的方法,其特征在于,还包括:
获取抹账事件,确定所述抹账事件的发生时刻以及涉及第一时刻第一账户生成的交易数据;
基于所述第一时刻属于第三时间区间,所述抹账时间的发生时刻属于第四时间区间,确定所述第三时间区间至所述第四时间区间对应的数据存储区域;
针对所述第三时间区间至所述第四时间区间对应的数据存储区域中每一数据存储区域内所述第一账户的交易数据进行差额汇总,生成所述数据存储区域中第一账户的差额汇总数据,所述第一账户的交易数据的状态包括抹除状态和非抹除状态;
基于第三时间区间前一个时间区间中第一账户余额与至当前处理周期中最后一个时间区间对应的数据存储区域中每一数据存储区域内所述第一账户的差额汇总数据相加,得到当前处理周期所述第一账户的余额。
9.一种交易余额的计算装置,其特征在于,包括:
获取模块,用于获取交易数据;
选择模块,用于基于所述交易数据的生成时间,在至少两个数据存储区域中选择与所述生成时间对应的目标数据存储区域,并存储所述交易数据,任一数据存储区域对应一时间区间,且任意两个数据存储区域对应的时间区间不重叠;
汇总模块,用于针对所述至少两个数据存储区域中每一数据存储区域内的交易数据进行差额汇总,生成所述数据存储区域中每个账户的差额汇总数据;
余额计算模块,用于根据至少两个数据存储区域的差额汇总数据,计算每个账户的余额。
10.根据权利要求9所述的处理装置,其特征在于,还包括:
预处理模块,用于将一个处理周期按照设定的时间间隔依次划分为至少两个时间区间,所述至少两个时间区间依次连续且不交叉,所述时间间隔的长度与所述数据存储区域所属的数据库的处理能力相关。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111029387.XA CN113628053A (zh) | 2021-09-03 | 2021-09-03 | 一种交易余额的计算方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111029387.XA CN113628053A (zh) | 2021-09-03 | 2021-09-03 | 一种交易余额的计算方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113628053A true CN113628053A (zh) | 2021-11-09 |
Family
ID=78388934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111029387.XA Pending CN113628053A (zh) | 2021-09-03 | 2021-09-03 | 一种交易余额的计算方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113628053A (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002298060A (ja) * | 2001-03-30 | 2002-10-11 | Mizuho Corporate Bank Ltd | 預金処理方法 |
CN102135959A (zh) * | 2010-01-21 | 2011-07-27 | 金蝶软件(中国)有限公司 | 一种报表的余额查询方法及服务器 |
CN104408057A (zh) * | 2014-10-29 | 2015-03-11 | 中国建设银行股份有限公司 | 一种数据汇总的方法及装置 |
CN107330778A (zh) * | 2017-07-03 | 2017-11-07 | 北京云总财科技有限公司 | 一种财务会计记账系统 |
CN107657058A (zh) * | 2017-10-19 | 2018-02-02 | 上海大汉三通数据通信有限公司 | 一种数据的查询方法及相关装置 |
CN108305177A (zh) * | 2018-01-29 | 2018-07-20 | 中国平安人寿保险股份有限公司 | 一种保险结息处理的方法、终端及计算机可读存储介质 |
CN109472566A (zh) * | 2018-09-26 | 2019-03-15 | 平安科技(深圳)有限公司 | 区块动态生成方法、装置、计算机设备和存储介质 |
CN110599026A (zh) * | 2019-09-09 | 2019-12-20 | 北京搜狗科技发展有限公司 | 数据处理方法、装置和用于数据处理的装置 |
CN112241889A (zh) * | 2020-09-28 | 2021-01-19 | 中国建设银行股份有限公司 | 一种账户明细修复方法、装置、设备和存储介质 |
CN112529675A (zh) * | 2020-12-21 | 2021-03-19 | 柏丽德珠宝(广州)有限公司 | 基于财务数据的资产估算方法及装置 |
CN112927067A (zh) * | 2021-03-30 | 2021-06-08 | 中国建设银行股份有限公司 | 挂账余额的统计方法、装置、设备及介质 |
-
2021
- 2021-09-03 CN CN202111029387.XA patent/CN113628053A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002298060A (ja) * | 2001-03-30 | 2002-10-11 | Mizuho Corporate Bank Ltd | 預金処理方法 |
CN102135959A (zh) * | 2010-01-21 | 2011-07-27 | 金蝶软件(中国)有限公司 | 一种报表的余额查询方法及服务器 |
CN104408057A (zh) * | 2014-10-29 | 2015-03-11 | 中国建设银行股份有限公司 | 一种数据汇总的方法及装置 |
CN107330778A (zh) * | 2017-07-03 | 2017-11-07 | 北京云总财科技有限公司 | 一种财务会计记账系统 |
CN107657058A (zh) * | 2017-10-19 | 2018-02-02 | 上海大汉三通数据通信有限公司 | 一种数据的查询方法及相关装置 |
CN108305177A (zh) * | 2018-01-29 | 2018-07-20 | 中国平安人寿保险股份有限公司 | 一种保险结息处理的方法、终端及计算机可读存储介质 |
CN109472566A (zh) * | 2018-09-26 | 2019-03-15 | 平安科技(深圳)有限公司 | 区块动态生成方法、装置、计算机设备和存储介质 |
CN110599026A (zh) * | 2019-09-09 | 2019-12-20 | 北京搜狗科技发展有限公司 | 数据处理方法、装置和用于数据处理的装置 |
CN112241889A (zh) * | 2020-09-28 | 2021-01-19 | 中国建设银行股份有限公司 | 一种账户明细修复方法、装置、设备和存储介质 |
CN112529675A (zh) * | 2020-12-21 | 2021-03-19 | 柏丽德珠宝(广州)有限公司 | 基于财务数据的资产估算方法及装置 |
CN112927067A (zh) * | 2021-03-30 | 2021-06-08 | 中国建设银行股份有限公司 | 挂账余额的统计方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230034067A1 (en) | System and method for determining a propensity of entity to take a specified action | |
US8165945B2 (en) | Transaction velocity counting for fraud detection | |
US8412633B2 (en) | Money transfer evaluation systems and methods | |
CN106022902A (zh) | 一种会计核算方法及装置 | |
CN104103008A (zh) | 一种基于短消息的记账方法及系统 | |
US8666800B2 (en) | Method and system for providing guidance data | |
CN102509237A (zh) | 信用卡还款提醒方法和系统及第三方信用卡还款提醒平台 | |
CN106033324A (zh) | 一种数据存储的方法和装置 | |
Strobl et al. | Electoral cycles in government policy making: Strategic timing of austerity reform measures in Western Europe | |
Schimmel et al. | Disability benefits suspended or terminated because of work | |
CN103426050B (zh) | 业务课题分析支持系统 | |
CN105653551B (zh) | 分布式系统中数据更新和统计的方法及其装置 | |
CN113628053A (zh) | 一种交易余额的计算方法和装置 | |
CN113342834A (zh) | 一种解决大数据系统中历史数据变化的方法 | |
US10956369B1 (en) | Data aggregations in a distributed environment | |
CN111951011B (zh) | 监控系统阈值确定方法及装置 | |
CN111274255B (zh) | 业务数据监控方法及系统、监控架构、设备、存储介质 | |
CN109245949B (zh) | 一种信息处理方法及装置 | |
CN114647555B (zh) | 基于多业务系统的数据预警方法、装置、设备和介质 | |
US9635399B2 (en) | Systems and methods for efficiently chronicling broadcast content | |
CN117057903A (zh) | 一种数据处理方法、装置、设备及介质 | |
CN117787981A (zh) | 一种当日交易明细的补全方法、设备及介质 | |
KR20150030608A (ko) | 회계감사 규칙 최적화기 | |
CN114860823A (zh) | 一种批量数据处理的方法和装置 | |
CN116861039A (zh) | 一种数据处理方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20211109 |