一种账户资源数据确定方法及系统
技术领域
本说明书一个或多个涉及计算机技术领域,尤其涉及一种账户资源数据确定方法及系统。
背景技术
目前,在国际监管日益趋严的形势下,各国对储值支付账户的监管要求也随之日益趋紧,对于储值支付账户的账户余额累计需要有相关的保函进行覆盖,否则,严重可能吊销相关第三方服务机构的支付牌照。
然后,现有技术中主要由业务系统在日切时间节点开始对所有储值支付账户的账户余额进行统计汇总得到的,具体的,该日切时间节点即为记账日期切至下一记账日期的结算时刻,在日切时间节点过后,该下一记账日期变为当前记账日期,同时,开始对所有储值支付账户的前一记账日期进行日结数据统计,统计得到前一记账日期的所有储值支付账户的账户余额累计,因此,当前只能够获取账户余额的日结数据,无法满足对账户资源的实时监控需求。
由此可知,需要提供一种时效性强、准确度高的账户资源数据的确定方法。
发明内容
本说明书一个或多个实施例的目的是提供一种账户资源数据确定方法及系统,能够实时确定当前时刻的资源结余数据,提高了确定账户资源数据的时效性和准确度,避免因日切不稳定或日切时间不一致而导致无法获取当前时刻的资源结余数据,从而实现对账户资源数据进行实时监控,以便及时对相应的账户资源保函进行精准调整。
为解决上述技术问题,本说明书一个或多个实施例是这样实现的:
本说明书一个或多个实施例提供了一种账户资源数据确定方法,包括:
获取多个用户账户的前一记账周期的资源结余数据;以及,
以数据流形式获取所述多个用户账户自所述前一记账周期的结算时刻至当前时刻的账务变动记录;
采用流式处理方式基于获取到的所述账务变动记录,确定所述多个用户账户的资源变化总量;
根据所述资源变化总量和所述前一记账周期的所述资源结余数据,确定所述多个用户账户在所述当前时刻的资源结余数据。
本说明书一个或多个实施例提供了一种账户资源数据确定系统,包括:
业务系统和实时处理平台,其中,所述实时处理平台与所述业务系统通信连接;
所述业务系统,用于根据用户账户的账务变动请求生成账务变动记录;以及以数据流形式向所述实时处理平台传输所述账务变动记录;
所述实时处理平台,用于获取多个用户账户的前一记账周期的资源结余数据;以及以数据流形式获取所述业务系统传输的所述多个用户账户自所述前一记账周期的结算时刻至当前时刻的账务变动记录;
所述实时处理平台,还用于采用流式处理方式基于获取到的所述账务变动记录,确定所述多个用户账户的资源变化总量;根据所述资源变化总量和所述前一记账周期的所述资源结余数据,确定所述多个用户账户在所述当前时刻的资源结余数据。
本说明书一个或多个实施例提供了一种账户资源数据确定设备,包括:处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
获取多个用户账户的前一记账周期的资源结余数据;以及,
以数据流形式获取所述多个用户账户自所述前一记账周期的结算时刻至当前时刻的账务变动记录;
采用流式处理方式基于获取到的所述账务变动记录,确定所述多个用户账户的资源变化总量;
根据所述资源变化总量和所述前一记账周期的所述资源结余数据,确定所述多个用户账户在所述当前时刻的资源结余数据。
本说明书一个或多个实施例提供了一种存储介质,用于存储计算机可执行指令,所述可执行指令在被执行时实现以下流程:
获取多个用户账户的前一记账周期的资源结余数据;以及,
以数据流形式获取所述多个用户账户自所述前一记账周期的结算时刻至当前时刻的账务变动记录;
采用流式处理方式基于获取到的所述账务变动记录,确定所述多个用户账户的资源变化总量;
根据所述资源变化总量和所述前一记账周期的所述资源结余数据,确定所述多个用户账户在所述当前时刻的资源结余数据。
本说明书一个或多个实施例中的账户资源数据确定方法及系统,通过实时处理平台获取多个用户账户的前一记账周期的资源结余数据;以及通过实时处理平台采用以数据流形式获取该多个用户账户自前一记账周期的结算时刻至当前时刻的账务变动记录,并采用流式处理方式基于该账务变动记录确定多个用户账户的资源变化总量,这样实时处理平台能够以前一记账周期的资源结余数据为基础,结合该资源变化总量,实时确定当前时刻的资源结余数据,提高了确定账户资源数据的时效性和准确度,避免因日切不稳定或日切时间不一致而导致无法获取当前时刻的资源结余数据,从而实现对账户资源数据进行实时监控,以便及时对相应的账户资源保函进行精准调整。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本说明书一个或多个实施例提供的账户资源数据确定系统的应用场景示意图;
图2为本说明书一个或多个实施例提供的账户资源数据确定方法的流程示意图;
图3为本说明书一个或多个实施例提供的账户资源数据确定方法中各数据处理端之间的第一交互示意图;
图4为本说明书一个或多个实施例提供的账户资源数据确定方法中各数据处理端之间的第二交互示意图;
图5为本说明书一个或多个实施例提供的账户资源数据确定方法中各数据处理端之间的第三交互示意图;
图6为本说明书一个或多个实施例提供的实时确定账户资源数据的实现原理示意图;
图7为本说明书一个或多个实施例提供的账户资源数据确定系统的第一种模块组成示意图;
图8为本说明书一个或多个实施例提供的账户资源数据确定系统的第二种模块组成示意图;
图9为本说明书一个或多个实施例提供的账户资源数据确定设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一个或多个一部分实施例,而不是全部的实施例。基于本说明书一个或多个中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书一个或多个保护的范围。
本说明书一个或多个实施例提供了一种账户资源数据确定方法及系统,能够实时确定当前时刻的资源结余数据,提高了确定账户资源数据的时效性和准确度,避免因日切不稳定或日切时间不一致而导致无法获取当前时刻的资源结余数据,从而实现对账户资源数据进行实时监控,以便及时对相应的账户资源保函进行精准调整。
图1为本说明书一个或多个实施例提供的账户资源数据确定系统的应用场景示意图,如图1所示,该确定系统包括:业务系统、数据处理平台和业务监管平台,其中,该业务系统用于对用户账户的入账请求和出账请求进行处理,并定期确定科目结算数据,该数据处理平台包括:实时处理平台和离线处理平台,该业务监管平台用于基于实时处理平台所确定的当前时刻的资源结余数据进行账户资源实时监管,其中,账户资源数据确定的具体过程为:
(1)上述业务系统基于多个用户账户的账务变动请求生成账务变动记录,并将该账务变动记录写入会记分录表中;以及,在日切时间节点开始进行账户科目余额统计,得到科目结算数据,并将该科目结算数据写入科目余额表中;
(2)上述离线处理平台获取业务系统所确定出的科目结算数据,基于该科目结算数据确定多个用户账户的前一记账周期的资源结余数据,并将该前一记账周期的资源结余数据上传至实时处理平台,以便实时处理平台将该前一记账周期的资源结余数据存入本地数据库中;
具体的,离线处理平台从业务系统的科目余额表中获取最新日期的科目余额数据,基于该科目余额数据确定前一记账周期的资源结余数据;
(3)上述实时处理平台以数据流形式从业务系统的会计分录表中获取自前一记账周期的结算时刻至当前时刻的账务变动记录;
其中,以数据流形式从业务系统处逐条获取目标时间段内多个用户账户相关的账务变动记录,该目标时间段是指自前一记账周期的结算时刻至当前时刻的时间段,同一条账务变动记录不会重复获取;如果记账周期的时长为一天,则该前一记账周期的结算时刻是指由前一记账日期切至当前记账日期的日切时刻,具体的,业务系统将会记分录表中自日切时刻起新增的账务变动记录以数据流形式传输至实时处理平台,该实时处理平台以数据流形式逐条接收业务系统传输的账务变动记录;
(4)上述实时处理平台从本地数据库中获取前一记账周期的资源结余数据;其中,该资源结余数据可以是离线处理平台上传的,或者是自身在当前时刻为日切时刻时确定出的;
具体的,由于业务系统自日切时刻起需要一段时间才能够完成账户科目余额统计,这样离线处理平台需要延迟一段时间再从业务系统获取科目结算数据并确定前一记账周期的资源结余数据,导致离线处理平台向实时处理平台上传前一记账周期的资源结余数据存在一定延时,因此,在日切时间节点至同步时间节点的这个时间段内,实时处理平台将自身在日切时间节点确定并写入本地数据的实时资源结余数据作为前一记账周期的资源结余数据,直到离线处理平台向实时处理平台上传前一记账周期的资源结余数据;
(5)上述实时处理平台采用流式处理方式基于获取到的前一记账周期的结算时刻至当前时刻的账务变动记录,确定多个用户账户的资源变化总量,其中,该实时处理平台是指流式处理平台,该流式处理平台能够针对流数据进行实时数据处理,具体的,对以数据流方式获取到的账务变动记录进行实时数据处理,得到多个用户账户的资源变化总量,以保证再实时基于获取到的账务变动记录确定资源变化总量,从而满足实时处理大数据的需求;
具体的,在每次记账日期的日切时刻时,将资源变化总量设置为零,根据以数据流形式接收到的账务变动记录不断更新该资源变化总量,更新后的资源变化总量即为当前时刻确定出的资源变化总量;例如,若接收到的账务变动记录表示入账金额,则在最新的资源变化总量(即上一时刻得到的资源变化总量)基础上增加该入账金额,若接收到的账务变动记录表示出账金额,则在最新的资源变化总量(即上一时刻得到的资源变化总量)基础上减去该出账金额,因此,当前时刻确定出的资源变化总量即为基于获取到的账务变动记录,确定出的自前一记账周期的结算时刻至当前时刻的账户发生额累计;
(6)上述实时处理平台根据确定出的资源变化总量和获取到的前一记账周期的资源结余数据,确定多个用户账户在当前时刻的资源结余数据,并将该当前时刻的资源结余数据(即实时资源结余数据)写入本地数据库中;
也就是说,相较于现有技术中只设置业务系统的情况,通过增加离线处理平台和实时处理平台,增加与业务系统之间进行信息交互的处理逻辑,并基于从业务系统处获取到的相关数据进行相应的处理,来实现实时确定目标账户的当前时刻的资源结余数据。
图2为本说明书一个或多个实施例提供的账户资源数据确定方法的流程示意图,图2中的方法能够由图1中的实时处理平台执行,如图2所示,该方法至少包括以下步骤:
S201,获取多个用户账户的前一记账周期的资源结余数据,其中,该用户账户可以是储值支付账户,该多个用户账户可以是与目标科目相关的多个账户,该用户账户的数量可以比较大;
具体的,实时处理平台从本地数据库中获取前一记账周期的资源结余数据,该资源结余数据可以是离线处理平台上传至本地数据库的,或者是自身在当前时刻为日切时刻时确定并存储至本地数据库的;
其中,如果业务系统采用日结方式确定科目结算数据,那么前一记账周期为前一记账日期,业务系统在日切时间节点将前一记账日期切至当前记账日期,例如,日切时间节点为凌晨0点,此时业务系统开始对多个用户账户进行科目余额统计,对应的,上述前一记账周期的资源结余数据可以是多个用户账户在日切时间节点的账户余额累计量;
S202,以数据流形式获取多个用户账户自前一记账周期的结算时刻至当前时刻的账务变动记录;
其中,上述结算时刻是指从前一记账日期切换到下一记账日期(即当前记账日期)的日切时间节点,上述当前时刻是指当前记账日期的当前时间节点,由于可以获取到前一记账日期的资源结余数据,还需要通过实时处理平台以数据流形式从业务系统处逐条获取自结算时刻至当前时刻的账务变动记录,其中,每一条账务变动记录不会重复获取,以便再采用流式处理方式确定自结算时刻至当前时刻多个用户账户的发生额累计;
其中,上述日切时间节点是指日切时刻,业务系统配置的日切时刻(一般为夜间交易低谷时间),将激活记账中心的日切程序,业务系统从当前工作日切换到下一工作日,是当日批处理中的一个步骤,执行完这个步骤后,系统日期为下一个工作日;
具体的,业务系统按照科目和会计日期将会记分录表中自日切时刻起新增的账务变动记录以数据流形式传输至实时处理平台,其中,每条账务变动记录只传输一次,实时处理平台以数据流形式逐条接收业务系统传输的账务变动记录,该会计分录表是业务系统根据复式记帐原理的要求,对每笔经济业务列出相对应的双方帐户及其金额的一种记录数据日志,该会计分录表中记录了每个账户的资源变动值,例如,账户A-100,账户B+100等,每发生一笔交易都会触发账务系统去记一笔会计分录;
S203,采用流式处理方式基于获取到的账务变动记录,确定多个用户账户的资源变化总量,其中,该资源变化总量可以是指账户发生额累计;
其中,实时处理平台采用流式处理方式基于获取到的账务变动记录,确定自前一记账周期的结算时刻至当前时刻的资源变化总量,即采用流式处理方式对以数据流方式获取到的账务变动记录进行实时数据处理,得到多个用户账户的资源变化总量,以保证再实时基于获取到的账务变动记录确定资源变化总量,从而满足实时处理大数据的需求;
具体的,在每次记账日期的日切时刻时,将资源变化总量设置为零,根据以数据流形式接收到的账务变动记录不断更新该资源变化总量,更新后的资源变化总量即为当前时刻确定出的资源变化总量,当下一时刻变为当前时刻时,更新后的资源变化总量变为上一时刻得到的资源变化总量;
例如,若接收到的账务变动记录表示入账金额,则在最新的资源变化总量基础上增加该入账金额,若接收到的账务变动记录表示出账金额,则在最新的资源变化总量基础上减去该出账金额,其中,该最新的资源变化总量是指上一时刻得到的资源变化总量,在前一记账周期的结算时刻时,该最新的资源变化总量为零,随着不断接收到新的账务变动记录,基于该账务变动记录不断更新该资源变化总量,因此,当前时刻确定出的资源变化总量即为自前一记账周期的结算时刻至当前时刻的账户发生额累计;
S204,根据确定出的资源变化总量和获取到的前一记账周期的资源结余数据,确定多个用户账户在当前时刻的资源结余数据,其中,该资源结余数据可以是待监控的所有用户账户在当前时刻的账户余额累计;
具体的,将自结算时刻至当前时刻的资源变化总量与结算时刻的资源结余数据之和,确定为多个用户账户在当前时刻的资源结余数据,即将由前一记账日期切换为当前记账日期的结算时刻的账户余额累计量与自结算时刻至当前时刻的账户变化累积量之和,确定为多个用户账户在当前时刻的账户余额累计量;
其中,由于实时处理平台属于实时流计算平台,主要是基于业务系统产生的BINLOG日志(即账务变动记录)进行流式计算,因而,针对当前记账日期不会发生余额变动的部分账户,即当前记账日期不产生变动交易日志的部分用户,则实时处理平台无法感知到该部分账户的当前账户余额,因此,不能直接由实时处理平台实时对多个储值支付账户的余额累加来确定当前时刻的账户余额累计,而是采用流式处理方式基于以数据流形式接收到的账务变动记录进行资源变化量累计,再结合前一记账周期的资源结余数据和资源变化总量实时确定当前时刻的资源结余数据。
另外,需要说明的是,其中,上述多个用户账户的数量级可以是几十亿账户,本说明书一个或多个实施例主要针对分布式框架下的海量用户账户的资源结余数据进行实时监控,具体的,采用流式处理方式基于获取到的自结算时刻至当前时刻的海量账务变动记录进行资源变化量累计,进而实时确定当前时刻的资源结余数据;
本说明书一个或多个实施例中,通过实时处理平台获取多个用户账户的前一记账周期的资源结余数据;以及通过实时处理平台以数据流形式获取该多个用户账户自前一记账周期的结算时刻至当前时刻的账务变动记录,并采用流式处理方式基于该账务变动记录确定多个用户账户的资源变化总量,这样实时处理平台能够以前一记账周期的资源结余数据为基础,结合该资源变化总量,实时确定当前时刻的资源结余数据,提高了确定账户资源数据的时效性、准确度和稳定性,避免因日切不稳定或日切时间不一致而导致无法获取当前时刻的资源结余数据,从而实现对账户资源数据进行实时监控,以便及时对相应的账户资源保函进行精准调整,降低了监管风险和流动性风险。
进一步的,考虑到业务系统自日切时刻开始进行科目余额统计,由于数据量比较大,需要一段时间才能够得到科目结算数据,离线处理平台需要延迟一段时间再从业务系统获取科目结算数据并确定前一记账周期的资源结余数据,导致离线处理平台向实时处理平台上传前一记账周期的资源结余数据存在一定延时,如果将离线处理平台将前一记账周期的资源结余数据上传至实时处理平台的时刻即为数据同步时刻,因此,在数据同步时刻之前实时处理平台还未接收到离线处理平台上传的前一记账周期的资源结余数据,需要以自身已确定出的日切时刻的资源结余数据为基准进行实时账户资源数据确定,基于此,上述S201获取多个用户账户的前一记账周期的资源结余数据,具体包括:
若当前时刻属于预设时间段,则获取自身所确定的多个用户账户的前一记账周期的资源结余数据;
其中,针对当前时刻属于预设时间段的情况,即当前时刻属于自前一记账周期的结算时刻至数据同步时刻之间的时间段,该时间段内离线处理平台还未将前一记账周期的资源结余数据上传至实时处理平台,实时处理平台可以将已确定出的结算时刻的实时结余数据作为前一记账周期的资源结余数据;
若当前时刻不属于预设时间段,则获取离线处理平台所确定的多个用户账户的前一记账周期的资源结余数据;
其中,针对当前时刻不属于预设时间段的情况,即当前时刻晚于数据同步时刻,该时间段内离线处理平台已将确定出的前一记账周期的资源结余数据上传至实时处理平台,实时处理平台可以将该资源结余数据作为前一记账周期的资源结余数据。
进一步的,离线处理平台按照预设规则定期确定前一记账周期的资源结余数据,并将该资源结余数据同步至实时处理平台,基于此,上述账户资源数据确定方法,还包括:
接收离线处理平台在数据同步时刻所上传的前一记账周期的资源结余数据;其中,该前一记账周期的资源结余数据是离线处理平台基于业务系统的科目结算数据确定的,其中,该科目结算数据是业务系统在日切时刻后确定出的日终数据,业务系统再基于该日终数据进行对账;
具体的,上述实时处理平台接收离线处理平台上传的前一记账周期的资源结余数据,并将该资源结余数据存储至本地数据库中;
其中,上述科目结算数据是业务系统确定出的某一记账周期的科目余额,如果业务系统采用日结方式确定科目余额,业务系统在日切时刻开始进行科目余额统计,经过一段时间后,确定出前一记账日期的科目余额,并将该科目余额传输至离线处理平台,以使离线处理平台基于该科目余额确定出前一记账周期的资源结余数据。
进一步的,由于在日切时刻实时处理平台已将自身确定出的资源结余数据存储至本地数据库中,其中,当由前一记账日期切至当前记账日期后,该日切时刻的资源结余数据即为前一记账周期的资源结余数据;并且后续还将接收到离线处理平台所上传的前一记账周期的资源结余数据,此时可以将离线处理平台确定的资源结余数据对自身确定的资源结余数据进行核对,基于此,在接收离线处理平台在数据同步时刻所上传的前一记账周期的资源结余数据之后,还包括:
判断接收到的资源结余数据与自身确定出的前一记账周期的资源结余数据是否一致;
其中,实时处理平台自身确定出的前一记账周期的资源结余数据即为由前一记账日期切至当前记账日期的日切时刻实时确定出的资源结余数据;
若否,则根据接收到的资源结余数据更新自身确定出的前一记账周期的资源结余数据;
具体的,如果离线处理平台确定出的前一记账周期的资源结余数据与自身确定出的前一记账周期的资源结余数据不一致,由于离线处理平台所上传的前一记账周期的资源结余数据是基于业务系统的科目结算数据确定得到的,准确度比较高,则可以以离线处理平台确定出的前一记账周期的资源结余数据为准,即将本地数据库中已存储的前一记账周期的资源结余数据替换为离线处理平台所上传的前一记账周期的资源结余数据。
进一步的,针对离线处理平台基于业务系统的科目结算数据确定前一记账周期的资源结余数据的过程,具体的,在接收离线处理平台在数据同步时刻所上传的前一记账周期的资源结余数据之前,还包括:
上述离线处理平台获取业务系统确定出的多个用户账户的科目结算数据;
上述离线处理平台根据获取到的科目结算数据,确定多个用户账户的前一记账周期的资源结余数据;
上述离线处理平台将前一记账周期的资源结余数据上传至实时处理平台。
具体的,如图3所述,给出了账户资源数据确定方法中各数据处理端之间的第一交互示意图,具体为:
S301,业务系统向离线处理平台传输科目结算数据,其中,该科目结算数据可以是前一记账日期的科目余额;
S302,离线处理平台从业务系统中获取多个用户账户的科目结算数据;
具体的,上述离线处理平台可以定期向业务系统请求获取科目结算数据,这样避免因业务系统异常获取不到科目结算数据的问题;还可以接收业务系统主动发送的科目结算数据,这样能够减少离线处理平台的数据处理量。
S303,离线处理平台根据获取到的科目结算数据,确定前一记账周期的资源结余数据;
S304,离线处理平台将确定出的前一记账周期的资源结余数据上传至实时处理平台;
S305,实时处理平台将接收到的前一记账周期的资源结余数据存入本地数据库中;
S306,实时处理平台从本地数据库中,获取前一记账周期的资源结余数据,其中,该资源结余数据可以是离线处理平台上传的,或者是自身在当前时刻为日切时刻时确定出的;
S307,实时处理平台从业务系统的会计分录表中,以数据流形式读取多个用户账户自前一记账周期的结算时刻至当前时刻的账务变动记录;
S308,实时处理平台采用流式处理方式根据读取到的账务变动记录,确定多个用户账户的资源变化总量;
S309,实时处理平台根据确定出的资源变化总量和获取到的前一记账周期的资源结余数据,确定多个用户账户在当前时刻的资源结余数据;
S310,实时处理平台将确定出的各时刻的资源结余数据存储至本地数据库中。
其中,对于实时处理平台而言,自记账日期由上一记账日期切至当前记账日期起,持续以数据流形式接收业务系统传输的新增的账务变动记录,并采用流式处理方式基于接收到的账务变动记录持续进行资源变化量累计,实时确定资源变化总量;另外,在记账日期由当前记账日期切至下一记账日期时,自动将资源变化总量设置为零。
进一步的,考虑到业务系统可能出现异常的情况,业务系统无法正常完成前一记账日期的科目余额统计,此时离线处理平台从业务系统获取到的科目结算数据并不是前一记账日期的科目余额,因此,离线处理平台需要先判断该科目结算数据是否为前一记账日期的科目余额,再确定前一记账周期的资源结余数据,基于此,上述根据获取到的科目结算数据,确定多个用户账户的前一记账周期的资源结余数据,具体包括:
判断从业务系统获取到的科目结算数据对应的历史记账周期与前一记账周期是否一致;
若是,则将获取到的科目结算数据确定为前一记账周期的资源结余数据,具体的,当获取到的科目结算数据对应的历史记账周期与前一记账周期一致,则说明业务系统能够正常进行科目余额统计,可以直接将该科目结算数据作为前一记账周期的资源结余数据;
若否,则基于获取到的科目结算数据,确定前一记账周期的资源结余数据,具体的,当获取到的科目结算数据对应的历史记账周期与前一记账周期不一致,则说明业务系统存在异常,无法正常进行科目余额统计,因此,需要离线处理平台基于该科目结算数据进一步确定前一记账周期的资源结余数据。
对应的,在图3的基础上,如图4所述,给出了账户资源数据确定方法中各数据处理端之间的第二交互示意图,具体为:
上述S303离线处理平台根据获取到的科目结算数据,确定前一记账周期的资源结余数据,具体包括:
S3031,离线处理平台判断获取到的科目结算数据对应的历史记账周期与前一记账周期是否一致;
若判断结果为是,则执行S3032,将获取到的科目结算数据确定为前一记账周期的资源结余数据;
若判断结果为否,则执行S3033,基于获取到的科目结算数据,确定前一记账周期的资源结余数据。
具体的,针对离线处理平台从业务系统获取到的科目结算数据并不是前一记账日期的科目余额情况,需要离线处理平台自动确定前一记账周期的资源结余数据,基于此,上述基于获取到的科目结算数据,确定前一记账周期的资源结余数据,具体包括:
步骤一,获取自历史记账周期的下一个记账周期至前一记账周期的初始账务变动记录;
具体的,离线处理平台从业务系统的会计分录表中,获取科目结算数据对应的历史记账周期的下一个记账周期至前一记账周期的账务变动记录;
例如,如果业务系统采用日结方式确定科目结算数据,当前记账日期为3月10日,而从业务系统获取到的科目结算数据对应的历史记账日期为3月5日,那么需要获取3月6日至3月9日的账务变动记录;
步骤二,从获取到的初始账务变动记录中,删除存在异常的用户账户的账务变动记录,得到目标账务变动记录;
具体的,考虑到获取到的初始账务变动记录中包含异常账户的账务变动记录,因此,需要将这部分账务变动记录剔除掉;
步骤三,基于获取到的科目结算数据和筛选得到的目标账务变动记录,确定前一记账周期的资源结余数据;
具体的,先基于筛选得到的目标账务变动记录,确定自历史记账周期的下一个记账周期至前一记账周期的资源变化总量,再将该资源变化总量与获取到的科目结算数据之和确定为前一记账周期的资源结余数据。
对应的,在图4的基础上,如图5所述,给出了账户资源数据确定方法中各数据处理端之间的第三交互示意图,具体为:
上述S3033基于获取到的科目结算数据,确定前一记账周期的资源结余数据,具体包括:
S30331,离线处理平台从业务系统处获取自历史记账周期的下一个记账周期至前一记账周期的初始账务变动记录;
S30332,离线处理平台从获取到的初始账务变动记录中,删除存在异常的用户账户的账务变动记录,得到目标账务变动记录;
S30333,离线处理平台基于筛选得到的目标账务变动记录,确定自历史记账周期的下一个记账周期至前一记账周期的资源变化总量;
S30334,离线处理平台根据确定出的资源变化总量与获取到的科目结算数据,确定前一记账周期的资源结余数据。
在一个具体实施例中,如图6所示,给出了针对当前时刻位于上述预设时间段内的实时确定账户资源数据的实现原理示意图,具体为:
如果当前记账日期为T日,那么T-1表示前一记账日期,T-2表示前一记账日期的上一记账日期(即当前记账日期为T-1时的前一记账日期),T-N日是指自当前记账日期往前推N天的历史记账日期,N为正整数,例如,当前记账日期为3月10日,N=5,则T-N日为3月5日;
第一阶段:对于记账日期由T-2日切至T-1日的历史阶段,针对在T-1日离线处理平台确定T-2日账户余额累计的过程而言,如果业务系统存在异常,离线处理平台无法获取到T-1日的前一记账日期(即T-2日)的科目结算数据,对应的,离线处理平台需要在切至T-1日后基于获取到的科目结算数据确定T-2日的日切时刻(即由T-2日切至T-1日)的账户余额累计,即T-2日账户余额累计的确定过程,具体为:
(1)离线处理平台从业务系统中获取T-N日科目余额,具体的,因业务系统异常而导致离线处理平台从业务系统处获取到的科目结算数据为T-N日科目余额,N大于2,即从业务系统处获取到的科目结算数据并不是T-1日的前一记账日期(即T-2日)的科目余额;
(2)离线处理平台从业务系统中获取T-N+1日至T-2日的多个用户账户的账务变动记录,并将异常账户的账务变动记录剔除,得到筛选后的目标账务变动记录;
(3)离线处理平台根据T-N+1日至T-2日的目标账务变动记录,确定T-N+1日至T-2日发生额累计;
(4)离线处理平台根据T-N日科目余额和T-N+1日至T-2日发生额累计,确定T-2日账户余额累计,并将该T-2日账户余额累计上传至实时处理平台;
第二阶段:对于记账日期由T-1日切至T+0日的历史阶段,针对在日切时刻实时处理平台确定当前时刻的账户余额的过程而言,实时处理平台确定T-1日的日切时刻(即由T-1日切至T+0日)的实时账户余额,即T-1日账户余额累计的确定过程,具体为:
(5)实时处理平台从本地数据库中获取T-2日账户余额累计,其中,该T-2日账户余额累计是离线处理平台在T-1日确定并上传的;
(6)实时处理平台以数据流形式从业务系统中获取自T-2日切至T-1日的日切时刻到当前时刻(即由T-1日切至T+0日的日切时刻)的账务变动记录,也就是,从业务系统的会计分录表中获取T-1日账务变动记录;
(7)实时处理平台采用流式处理方式根据获取到的T-1日账务变动记录,确定T-1日发生额累计;
(8)实时处理平台根据获取到的T-2日的账户余额累计和确定出的T-1日发生额累计,确定T-1日账户余额累计,并将该T-1日账户余额累计存储至本地数据库中;
另外,在记账日期由T-1日切至T+0日后,业务系统开始进行科目余额统计,一段时间后,离线处理平台从业务系统中获取科目结算数据,并基于该科目结算数据确定T-1日账户余额累计,以及将该T-1日账户余额累计上传至实时处理平台;其中,如果业务系统进行科目余额统计耗时时长为2小时,即从日切时刻至第一时刻(如0点到2点),业务系统进行科目余额统计,且在第一时刻将科目结算数据传输至离线处理平台;在第一时刻到第二时刻离线处理平台基于获取到的科目结算数据,确定前一记账周期的资源结余数据(该第二时刻即为数据同步时刻,第一时刻至第二时刻之间的时间段时长比较短),并在第二时刻将确定出的前一记账周期的资源结余数据上传至实时处理平台;
第三阶段:对于记账日期切至T+0日之后的当前阶段,针对在当前记账日期(即T+0日)的当前时刻实时确定T日账户余额累计的过程而言,实时处理平台实时确定当前时刻的账户余额累计的过程,具体为:
(9)实时处理平台从本地数据库中获取多个用户账户的T-1日账户余额累计;其中,在日切时刻至第二时刻时,该T-1日账户余额累计为实时处理平台自身在由T-1日切至T+0日的日切时刻确定出的实时账户余额累计;而在第二时刻之后,该T-1日账户余额累计为离线处理平台上传的;
(10)实时处理平台以数据流形式获取自T-1日的结算时刻(即由T-1日切至T+0日的日切时刻)至当前时刻的账务变动记录;
(11)实时处理平台采用流式处理方式根据获取到的自T-1日的结算时刻至当前时刻的账务变动记录,确定T+0日的发生额累计;
(12)实时处理平台根据获取到的T-1日的账户余额累计和确定出的T+0日的发生额累计,确定T+0日的当前时刻的账户余额累计。
进一步的,基于实时确定出的账户资源数据能够对账户资源数据进行实时监控,基于此,在上述S204根据确定出的资源变化总量和获取到的前一记账周期的资源结余数据,确定多个用户账户在当前时刻的资源结余数据之后,还包括:
将确定出的当前时刻的资源结余数据上传至业务监管平台,以使该业务监管平台判断该当前时刻的资源结余数据是否满足预设资源预警条件;
其中,该预设资源预警条件可以是资源结余数据大于预设阈值,即当待监控的所有用户账户在当前时刻的账户余额累计大于预设阈值时,说明账户余额累计已超出已有源保函中的保函额度,此时需要相应的增加该保函额度;
其中,保函(Letter of Guarantee,L/G)又称保证书,是指银行、保险公司、担保公司或个人应申请人的请求,向第三方开立的一种书面信用担保凭证,以便保证在申请人未能按双方协议履行其责任或义务时,由担保人代其履行一定金额、一定期限范围内的某种支付责任或经济赔偿责任;
具体的,业务监管平台在确定出当前时刻的资源结余数据大于预设阈值时,则通知银行机构调整针对目标业务所生成的资源保函中的保函额度,从而保证满足对储值支付账户的监管需求。
本说明书一个或多个实施例中的账户资源数据确定方法,通过实时处理平台获取多个用户账户的前一记账周期的资源结余数据;以及通过实时处理平台以数据流形式获取该多个用户账户自前一记账周期的结算时刻至当前时刻的账务变动记录,并采用流式处理方式基于该账务变动记录确定多个用户账户的资源变化总量,这样实时处理平台能够以前一记账周期的资源结余数据为基础,结合该资源变化总量,实时确定当前时刻的资源结余数据,提高了确定账户资源数据的时效性和准确度,避免因日切不稳定或日切时间不一致而导致无法获取当前时刻的资源结余数据,从而实现对账户资源数据进行实时监控,以便及时对相应的账户资源保函进行精准调整。
对应上述图2至图6描述的账户资源数据确定方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种账户资源数据确定装置,图7为本说明书一个或多个实施例提供的账户资源数据确定系统的第一种结构组成示意图,该装置用于执行图2至图6描述的账户资源数据确定方法,如图7所示,该系统包括:业务系统10和实时处理平台20,其中,所述实时处理平台20与所述业务系统10通信连接;
所述业务系统10,用于根据用户账户的账务变动请求生成账务变动记录;以及以数据流形式向所述实时处理平台20传输所述账务变动记录;
所述实时处理平台20,用于获取多个用户账户的前一记账周期的资源结余数据;以及以数据流形式获取所述业务系统10传输的所述多个用户账户自所述前一记账周期的结算时刻至当前时刻的账务变动记录;
所述实时处理平台20,还用于采用流式处理方式基于获取到的所述账务变动记录,确定所述多个用户账户的资源变化总量;根据所述资源变化总量和所述前一记账周期的所述资源结余数据,确定所述多个用户账户在所述当前时刻的资源结余数据。
本说明书一个或多个实施例中,通过实时处理平台20获取多个用户账户的前一记账周期的资源结余数据;以及通过实时处理平台20以数据流形式获取该多个用户账户自前一记账周期的结算时刻至当前时刻的账务变动记录,并采用流式处理方式基于该账务变动记录确定多个用户账户的资源变化总量,这样实时处理平台20能够以前一记账周期的资源结余数据为基础,结合该资源变化总量,实时确定当前时刻的资源结余数据,提高了确定账户资源数据的时效性和准确度,避免因日切不稳定或日切时间不一致而导致无法获取当前时刻的资源结余数据,从而实现对账户资源数据进行实时监控,以便及时对相应的账户资源保函进行精准调整。
进一步的,所述实时处理平台20,具体用于:
若当前时刻属于预设时间段,则获取自身所确定的多个用户账户的前一记账周期的资源结余数据;
若当前时刻不属于预设时间段,则获取离线处理平台所确定的多个用户账户的前一记账周期的资源结余数据;
其中,所述预设时间段包括:自所述前一记账周期的结算时刻至数据同步时刻之间的时间段。
进一步的,所述实时处理平台20,还用于:
接收离线处理平台在数据同步时刻所上传的前一记账周期的资源结余数据;
其中,所述前一记账周期的所述资源结余数据是所述离线处理平台基于业务系统10的科目结算数据确定的。
如图8所示,上述系统还包括:离线处理平台30,其中,所述离线处理平台30分别与所述业务系统10和所述实时处理平台20通信连接;
所述离线处理平台30,用于:
获取业务系统10确定出的多个用户账户的科目结算数据;
根据所述科目结算数据,确定所述多个用户账户的前一记账周期的资源结余数据;
将所述前一记账周期的所述资源结余数据上传至实时处理平台20。
进一步的,所述离线处理平台30,具体用于:
判断所述科目结算数据对应的历史记账周期与前一记账周期是否一致;
若是,则将所述科目结算数据确定为前一记账周期的资源结余数据;
若否,则基于所述科目结算数据,确定前一记账周期的资源结余数据。
进一步的,所述离线处理平台30,进一步具体用于:
获取自所述历史记账周期的下一个记账周期至所述前一记账周期的初始账务变动记录;
从所述初始账务变动记录中,删除存在异常的用户账户的账务变动记录,得到目标账务变动记录;
基于所述科目结算数据和所述目标账务变动记录,确定所述前一记账周期的资源结余数据。
进一步的,所述实时处理平台20,还用于:
将所述当前时刻的所述资源结余数据上传至业务监管平台40,以使所述业务监管平台40判断所述当前时刻的所述资源结余数据是否满足预设资源预警条件。
进一步的,所述实时处理平台20,还用于:
判断接收到的所述资源结余数据与自身确定出的所述前一记账周期的资源结余数据是否一致;
若否,则根据接收到的所述资源结余数据更新自身确定出的所述前一记账周期的资源结余数据。
本说明书一个或多个实施例中的账户资源数据确定装置,通过实时处理平台获取多个用户账户的前一记账周期的资源结余数据;以及通过实时处理平台以数据流形式获取该多个用户账户自前一记账周期的结算时刻至当前时刻的账务变动记录,并采用流式处理方式基于该账务变动记录确定多个用户账户的资源变化总量,这样实时处理平台能够以前一记账周期的资源结余数据为基础,结合该资源变化总量,实时确定当前时刻的资源结余数据,提高了确定账户资源数据的时效性和准确度,避免因日切不稳定或日切时间不一致而导致无法获取当前时刻的资源结余数据,从而实现对账户资源数据进行实时监控,以便及时对相应的账户资源保函进行精准调整。
需要说明的是,本说明书中关于账户资源数据确定装置的实施例与本说明书中关于账户资源数据确定方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应的账户资源数据确定方法的实施,重复之处不再赘述。
进一步地,对应上述图2至图6所示的方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种账户资源数据确定设备,该设备用于执行上述的账户资源数据确定方法,如图9所示。
账户资源数据确定设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器901和存储器902,存储器902中可以存储有一个或一个以上存储应用程序或数据。其中,存储器902可以是短暂存储或持久存储。存储在存储器902的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对账户资源数据确定设备中的一系列计算机可执行指令。更进一步地,处理器901可以设置为与存储器902通信,在账户资源数据确定设备上执行存储器902中的一系列计算机可执行指令。账户资源数据确定设备还可以包括一个或一个以上电源903,一个或一个以上有线或无线网络接口904,一个或一个以上输入输出接口905,一个或一个以上键盘906等。
在一个具体的实施例中,账户资源数据确定设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对账户资源数据确定设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
获取多个用户账户的前一记账周期的资源结余数据;以及,
以数据流形式获取所述多个用户账户自所述前一记账周期的结算时刻至当前时刻的账务变动记录;
采用流式处理方式基于获取到的所述账务变动记录,确定所述多个用户账户的资源变化总量;
根据所述资源变化总量和所述前一记账周期的所述资源结余数据,确定所述多个用户账户在所述当前时刻的资源结余数据。
本说明书一个或多个实施例中,通过实时处理平台获取多个用户账户的前一记账周期的资源结余数据;以及通过实时处理平台以数据流形式获取该多个用户账户自前一记账周期的结算时刻至当前时刻的账务变动记录,并采用流式处理方式基于该账务变动记录确定多个用户账户的资源变化总量,这样实时处理平台能够以前一记账周期的资源结余数据为基础,结合该资源变化总量,实时确定当前时刻的资源结余数据,提高了确定账户资源数据的时效性和准确度,避免因日切不稳定或日切时间不一致而导致无法获取当前时刻的资源结余数据,从而实现对账户资源数据进行实时监控,以便及时对相应的账户资源保函进行精准调整。
可选地,计算机可执行指令在被执行时,所述获取多个用户账户的前一记账周期的资源结余数据,包括:
若当前时刻属于预设时间段,则获取自身所确定的多个用户账户的前一记账周期的资源结余数据;
若当前时刻不属于预设时间段,则获取离线处理平台所确定的多个用户账户的前一记账周期的资源结余数据;
其中,所述预设时间段包括:自所述前一记账周期的结算时刻至数据同步时刻之间的时间段。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
接收离线处理平台在数据同步时刻所上传的前一记账周期的资源结余数据;
其中,所述前一记账周期的所述资源结余数据是所述离线处理平台基于业务系统的科目结算数据确定的。
可选地,计算机可执行指令在被执行时,在接收离线处理平台在数据同步时刻所上传的前一记账周期的资源结余数据之前,还包括:
所述离线处理平台获取业务系统确定出的多个用户账户的科目结算数据;
所述离线处理平台根据所述科目结算数据,确定所述多个用户账户的前一记账周期的资源结余数据;
所述离线处理平台将所述前一记账周期的所述资源结余数据上传至实时处理平台。
可选地,计算机可执行指令在被执行时,所述根据所述科目结算数据,确定所述多个用户账户的前一记账周期的资源结余数据,包括:
判断所述科目结算数据对应的历史记账周期与前一记账周期是否一致;
若是,则将所述科目结算数据确定为前一记账周期的资源结余数据;
若否,则基于所述科目结算数据,确定前一记账周期的资源结余数据。
可选地,计算机可执行指令在被执行时,所述基于所述科目结算数据,确定前一记账周期的资源结余数据,包括:
获取自所述历史记账周期的下一个记账周期至所述前一记账周期的初始账务变动记录;
从所述初始账务变动记录中,删除存在异常的用户账户的账务变动记录,得到目标账务变动记录;
基于所述科目结算数据和所述目标账务变动记录,确定所述前一记账周期的资源结余数据。
可选地,计算机可执行指令在被执行时,在确定所述多个用户账户在所述当前时刻的资源结余数据之后,还包括:
将所述当前时刻的所述资源结余数据上传至业务监管平台,以使所述业务监管平台判断所述当前时刻的所述资源结余数据是否满足预设资源预警条件。
可选地,计算机可执行指令在被执行时,在接收离线处理平台在数据同步时刻所上传的前一记账周期的资源结余数据之后,还包括:
判断接收到的所述资源结余数据与自身确定出的所述前一记账周期的资源结余数据是否一致;
若否,则根据接收到的所述资源结余数据更新自身确定出的所述前一记账周期的资源结余数据。
本说明书一个或多个实施例中的账户资源数据确定设备,通过实时处理平台获取多个用户账户的前一记账周期的资源结余数据;以及通过实时处理平台以数据流形式获取该多个用户账户自前一记账周期的结算时刻至当前时刻的账务变动记录,并采用流式处理方式基于该账务变动记录确定多个用户账户的资源变化总量,这样实时处理平台能够以前一记账周期的资源结余数据为基础,结合该资源变化总量,实时确定当前时刻的资源结余数据,提高了确定账户资源数据的时效性和准确度,避免因日切不稳定或日切时间不一致而导致无法获取当前时刻的资源结余数据,从而实现对账户资源数据进行实时监控,以便及时对相应的账户资源保函进行精准调整。
需要说明的是,本说明书中关于账户资源数据确定设备的实施例与本说明书中关于账户资源数据确定方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应的账户资源数据确定方法的实施,重复之处不再赘述。
进一步地,对应上述图2至图6所示的方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种存储介质,用于存储计算机可执行指令,一种具体的实施例中,该存储介质可以为U盘、光盘、硬盘等,该存储介质存储的计算机可执行指令在被处理器执行时,能实现以下流程:
获取多个用户账户的前一记账周期的资源结余数据;以及,
以数据流形式获取所述多个用户账户自所述前一记账周期的结算时刻至当前时刻的账务变动记录;
采用流式处理方式基于获取到的所述账务变动记录,确定所述多个用户账户的资源变化总量;
根据所述资源变化总量和所述前一记账周期的所述资源结余数据,确定所述多个用户账户在所述当前时刻的资源结余数据。
本说明书一个或多个实施例中,通过实时处理平台获取多个用户账户的前一记账周期的资源结余数据;以及通过实时处理平台以数据流形式获取该多个用户账户自前一记账周期的结算时刻至当前时刻的账务变动记录,并采用流式处理方式基于该账务变动记录确定多个用户账户的资源变化总量,这样实时处理平台能够以前一记账周期的资源结余数据为基础,结合该资源变化总量,实时确定当前时刻的资源结余数据,提高了确定账户资源数据的时效性和准确度,避免因日切不稳定或日切时间不一致而导致无法获取当前时刻的资源结余数据,从而实现对账户资源数据进行实时监控,以便及时对相应的账户资源保函进行精准调整。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述获取多个用户账户的前一记账周期的资源结余数据,包括:
若当前时刻属于预设时间段,则获取自身所确定的多个用户账户的前一记账周期的资源结余数据;
若当前时刻不属于预设时间段,则获取离线处理平台所确定的多个用户账户的前一记账周期的资源结余数据;
其中,所述预设时间段包括:自所述前一记账周期的结算时刻至数据同步时刻之间的时间段。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
接收离线处理平台在数据同步时刻所上传的前一记账周期的资源结余数据;
其中,所述前一记账周期的所述资源结余数据是所述离线处理平台基于业务系统的科目结算数据确定的。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,在接收离线处理平台在数据同步时刻所上传的前一记账周期的资源结余数据之前,还包括:
所述离线处理平台获取业务系统确定出的多个用户账户的科目结算数据;
所述离线处理平台根据所述科目结算数据,确定所述多个用户账户的前一记账周期的资源结余数据;
所述离线处理平台将所述前一记账周期的所述资源结余数据上传至实时处理平台。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述根据所述科目结算数据,确定所述多个用户账户的前一记账周期的资源结余数据,包括:
判断所述科目结算数据对应的历史记账周期与前一记账周期是否一致;
若是,则将所述科目结算数据确定为前一记账周期的资源结余数据;
若否,则基于所述科目结算数据,确定前一记账周期的资源结余数据。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述基于所述科目结算数据,确定前一记账周期的资源结余数据,包括:
获取自所述历史记账周期的下一个记账周期至所述前一记账周期的初始账务变动记录;
从所述初始账务变动记录中,删除存在异常的用户账户的账务变动记录,得到目标账务变动记录;
基于所述科目结算数据和所述目标账务变动记录,确定所述前一记账周期的资源结余数据。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,在确定所述多个用户账户在所述当前时刻的资源结余数据之后,还包括:
将所述当前时刻的所述资源结余数据上传至业务监管平台,以使所述业务监管平台判断所述当前时刻的所述资源结余数据是否满足预设资源预警条件。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,在接收离线处理平台在数据同步时刻所上传的前一记账周期的资源结余数据之后,还包括:
判断接收到的所述资源结余数据与自身确定出的所述前一记账周期的资源结余数据是否一致;
若否,则根据接收到的所述资源结余数据更新自身确定出的所述前一记账周期的资源结余数据。
本说明书一个或多个实施例中的存储介质存储的计算机可执行指令在被处理器执行时,通过实时处理平台获取多个用户账户的前一记账周期的资源结余数据;以及通过实时处理平台以数据流形式获取该多个用户账户自前一记账周期的结算时刻至当前时刻的账务变动记录,并采用流式处理方式基于该账务变动记录确定多个用户账户的资源变化总量,这样实时处理平台能够以前一记账周期的资源结余数据为基础,结合该资源变化总量,实时确定当前时刻的资源结余数据,提高了确定账户资源数据的时效性和准确度,避免因日切不稳定或日切时间不一致而导致无法获取当前时刻的资源结余数据,从而实现对账户资源数据进行实时监控,以便及时对相应的账户资源保函进行精准调整。
需要说明的是,本说明书中关于存储介质的实施例与本说明书中关于账户资源数据确定方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应的账户资源数据确定方法的实施,重复之处不再赘述。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HD Cal、JHDL(Java Hardware Description Language)、Lava、Lola、My HDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书一个或多个的实施例可提供为方法、系统、或计算机程序产品。因此,本说明书一个或多个可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个是参照根据本说明书一个或多个实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书一个或多个的实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书一个或多个的实施例而已,并不用于限制本说明书一个或多个。对于本领域技术人员来说,本说明书一个或多个可以有各种更改和变化。凡在本说明书一个或多个的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书一个或多个的权利要求范围之内。