一种备份方法和装置与流程

文档序号:12946709阅读:119来源:国知局
一种备份方法和装置与流程
本发明涉及数据库备份
技术领域
,尤其涉及一种备份方法和装置。
背景技术
:银行卡(bankcard)是商业银行等金融机构及邮政储汇机构向社会发行的,具有消费信用、转账结算、存取现金等全部或部分共享的信用支付工具。当前,银行卡已经较为普及。然而在银行系统内部对银行卡进行清算时,需要从银行卡系统数据库中获取所有银行卡的前日余额信息。现有技术中,从银行卡系统数据库中获取所有银行卡的前日余额信息有如下两种技术方案:方案一、从银行卡系统数据库中获取银行卡账户的当前余额以及当日所有交易信息,然后根据银行卡账户当日所有交易信息和银行卡账户的当前余额计算得到银行卡账户的前日余额。方案二、首先在银行卡系统数据库中为银行卡账户设置前日余额字段,并在每日选取固定的时间作为日切点,执行脚本统一将银行卡账户的当前余额复制到银行卡账户的前日余额进行备份,然后即可从银行卡数据库系统获取所有银行卡的前日余额。上述方案二中每日选取固定的时间作为日切点执行脚本统一将银行卡账户当前余额备份到银行卡账户前日余额的示意图,可参照图1。如图1所示,在从t-1日到t日在日切点的时候,统一将所有银行卡账户的当前余额备份到银行卡账户的前日余额;在从t日到t+1日在日切点的时候,再统一将所有银行卡账户的当前余额备份到银行卡账户的前日余额。针对上述方案一,对于交易量较大的银行卡系统,通过相减操作得到前日余额的操作量较大,将会影响银行卡系统的性能。针对上述方案二,在日期进行切换时进行余额备份的方案,需要同时对数据库中所有银行卡的数据进行修改,对于发卡量较大的银行卡系统,同时处理所有银行卡的记录是一个耗时较长的过程,在这个过程中卡系统的业务会因数据库修改受到影响,导致服务中断。技术实现要素:本发明实施例提供一种备份方法和装置,用以优化银行卡系统余额备份流程,通过减少操作量和减少由于余额备份导致处理失败的交易量以提高银行卡系统的性能。本发明实施例提供一种备份方法,包括:接收交易请求,所述交易请求中包含账号信息;根据所述交易请求,确定交易日期;获取所述账号信息对应的数据项,所述数据项包括备份日期、前日余额信息与当前余额信息;将所述数据项中的备份日期与所述交易日期进行比较,若两者不相同,则确定所述交易请求为所述账号信息在所述交易日期内的第一笔交易;将所述数据项中的当前余额信息备份到所述数据项中的前日余额信息;根据所述交易请求进行交易,在交易成功后,修改所述数据项中的当前余额信息,并将所述数据项中的备份日期修改为所述交易日期。较佳的,在获取所述账号信息对应的数据项后,还包括:若所述数据项中的备份日期与所述交易日期相同,则根据所述交易请求进行交易,并在交易成功后,修改所述数据项中的当前余额信息。较佳的,还包括:接收前日余额查询请求,所述前日余额查询请求中包含账号信息根据所述 前日余额查询请求,确定查询日期;根据所述账号信息获取所述账号信息对应的数据项;将所述查询日期与所述数据项中的备份日期进行比较,若两者不相同,则将所述数据项中的当前余额信息携带在查询响应消息中进行发送。较佳的,在根据所述账号信息获取所述账号信息对应的数据项后,还包括:若所述查询日期与所述数据项中的备份日期相同,则将所述数据项中的前日余额信息携带在查询响应中进行发送。较佳的,在将所述数据项中的当前余额信息携带在查询响应消息中进行发送后,还包括:将所述数据项中的当前余额信息备份到所述数据项中的前日余额信息中。本发明实施还提供一种备份装置,包括:接收模块,用于接收交易请求,所述交易请求中包含账号信息;并用于根据所述交易请求,确定交易日期;还用于获取所述账号信息对应的数据项,所述数据项包括备份日期、前日余额信息与当前余额信息;备份模块,用于将所述数据项中的备份日期与所述交易日期进行比较,并在两者不相同时,确定所述交易请求为所述账号信息在所述交易日期内的第一笔交易;还用于将所述数据项中的当前余额信息备份到所述数据项中的前日余额信息;根据所述交易请求进行交易,在交易成功后,修改所述数据项中的当前余额信息,并将所述数据项中的备份日期修改为所述交易日期。较佳的,所述备份模块还用于:在获取所述账号信息对应的数据项后,且在所述数据项中的备份日期与所述交易日期相同时,根据所述交易请求进行交易,在所述交易成功后,修改所述数据项中的当前余额信息。较佳的,所述接收模块,还用于:接收前日余额查询请求,所述前日余额查询请求中包含账号信息;根据所述前日余额查询请求,确定查询日期;根据所述账号信息获取所述账号信息对应的数据项;所述备份模块还用于:将所述查询日期与所述数据项中的备份日期进行比较,并在两者不相同时,将所述数据项中的当前余额信息携带在查询响应消息中进行发送。较佳的,所述备份模块,还用于:在所述查询日期与所述数据项中的备份日期相同时,将所述数据项中的前日余额信息携带在查询响应中进行发送。较佳的,所述备份模块,还用于:在将所述数据项中的当前余额信息携带在查询响应消息中进行发送后,将所述数据项中的当前余额信息备份到所述数据项中的前日余额信息中。本发明实施例中,在接收交易请求后,首先根据交易请求中的账号信息获取所述账号信息对应的数据项,并将数据项中的备份日期与根据交易请求确定的交易日期进行比较,在两者不相同时,确定所述交易请求为所述账号信息在所述交易日期内的第一笔交易,然后将所述数据项中的当前余额作为前日余额,最后根据交易请求进行交易,并在交易成功后,修改数据项中的当前余额,同时将数据项中的备份日期修改为交易日期。可以看出,只在交易日期内的第一笔交易时,对账户信息的前日余额进行备份,即将账号信息的当前余额复制到前日余额进行备份,而对交易日期内的第二笔交易、第三笔交易、第n笔交易以及交易日期内没有交易的账户的前日余额并未备份,由于在交易日期内未进行过交易的账户占总账户的大部分,因此减少了备份工作量,避免了冗余操作,从而优化了银行卡系统的性能。同时,由于针对有交易的账户,采取每个账户分散备份的方式还避免了同时备份造成的数据库长时间处于数据修改状态,导致这期间交易无法正常进行的问题,即针对有交易的账户,采取每个账户分散备份的方式,还可减少由于余额备份导致处理失败的交易量。附图说明为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍。图1为本发明实施例提供的方案二余额备份的示意图;图2为本发明实施例提供的备份方法流程示意图;图3为本发明实施例提供的接收前日余额查询请求时备份方法流程示意图;图4为本发明实施例提供的备份装置的结构示意图。具体实施方式为了使本发明的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。图2示例性示出了本发明实施例提供的一种备份方法的流程图,如图2所示,该方法可包括:s201、接收交易请求,该交易请求中包含账号信息。在交易请求中除了可包含账号信息外,还可包含交易类型和交易金额。其中,交易类型可包括入账、转账以及出账等。s202、根据接收的交易请求,确定交易日期。s203、根据交易请求中携带的账号信息获取所述账号信息对应的数据项,该数据项可包括备份日期、前日余额信息以及当前余额信息。数据项中除了可包括备份日期、前日余额信息以及当前余额信息,还可包括交易记录。数据项中包括的备份日期、前日余额信息、当前余额信息以及交易记录,可通过在数据库中为账户设置相应的字段实现。s204、判断数据项中的备份日期与交易请求中携带的交易日期是否相同,若不相同,则转至步骤s205,否则转至步骤s207。s205、确定交易请求为所述账号信息在交易日期内的第一笔交易,并将所述数据项中的当前余额信息备份到所述数据项中的前日余额信息;其中,将数据项中的当前余额信息备份到数据项中的前日余额信息进行备份,可采取将数据项中的当前余额信息复制到数据项中的前日余额信息的方式进行备份;或者直接将前日余额信息中的前日余额值修改为当前余额信息中的当前余额值。s206、根据交易请求进行交易,在交易成功后,修改所述数据项中的当前余额,并将数据项中的备份日期修改为所述交易日期。可选的,在根据交易请求进行交易成功后,还可将交易明细进行保存,并根据交易明细,修改所述数据项中的当前余额,同时,将数据项中的备份日期修改为所述交易日期。s207、根据交易请求进行交易,并在交易成功后,修改数据项中的当前余额信息。可选的,还可接收前日余额查询请求,在接收前日余额查询请求后,可执行图3所示的方法流程,如图3所示,该方法可包括:s301、接收前日余额查询请求,前日余额查询请求中可携带有账号信息。s302、根据接收的前日余额查询请求,确定查询日期。s303、根据前日余额查询请求中携带的账号信息获取所述账号信息对应的数据项,该数据项可包括备份日期、前日余额信息以及当前余额信息。数据项中除了可包括备份日期、前日余额信息以及当前余额信息,还可包括交易记录。s304、判断前日余额查询请求中携带的查询日前与所述数据项中的备份日期是否相同,若不相同,则转至步骤s305,否则转至步骤s306。s305、将数据项中的当前余额信息携带在查询响应消息中进行发送。可选的,在将数据项中的当前余额信息携带在查询响应消息中进行发送后, 还可将数据项中的当前余额信息备份到数据项中的前日余额信息中,即将数据项中的当前余额信息复制到所述数据项中的前日余额信息进行备份。例如,在具体实施时,可将查询分为收费查询和免费查询,针对收费查询,在将当前余额信息携带在查询响应消息中进行发送后,可将数据项中的当前余额信息复制到所述数据项中的前日余额信息进行备份,而针对免费查询,则不必进行备份。s306、将数据项中的前日余额信息携带在查询响应消息中进行发送。下面通过一个具体的例子对上述的方法流程进行详细的解释说明。在该例子中假设在2016年4月1日,新开账户卡a和卡b,并在卡a和卡b中各存入100元,并假设卡a和卡b对应的数据项包括交易记录、备份日期、前日余额信息与当前余额信息,则卡a和卡b在数据库中的存储内容可参见表格一。表格一账号信息交易记录备份日期前日余额(元)当前余额(元)卡a+1002016-04-010100卡b+1002016-04-010100进一步假设在2016年4月2日9:00,卡a消费10元,因此卡a的交易日期为2016年4月2日,在将卡a的交易日期与表格一中的备份日期相比较时,由于卡a的交易日期为2016年4月2日,而表格一中卡a的备份日期为2016年4月1日,则可确定“卡a消费10元”为2016年04月02日的第一笔交易,因此可将卡a的当前余额“100元”作为前日余额,即将卡a的前日余额从“0元”修改为“100元”,并且还可将卡a的备份日期从2016年4月1日修改为2016年4月2日,同时还可根据交易情况对卡a的当前余额进行修改,即可将卡a的当前余额从“100元”修改为“90元”(100元-10元=90元)。假设卡b 在2016年4月2日没有进行任何交易,因此在卡a消费10元后,卡a和卡b在数据库中的存储内容可参见表格二。表格二账号信息交易记录备份日期前日余额(元)当前余额(元)卡a-102016-04-0210090卡b+1002016-04-010100进一步假设在2016年4月2日的12:00,卡a又消费5元,因此卡a的交易日期为2016年4月2日,在将卡a的交易日期与表格一中的备份日期相比较时,由于卡a的交易日期为2016年4月2日,而表格一中卡a的备份日期也为2016年4月2日,则可确定“卡a消费5元”不是2016年04月02日的第一笔交易,因此只是将卡a的前日余额“100元”作为前日余额,即对卡a的前日余额不进行任何修改,也不对卡a的前日余额进行备份,只是仅仅根据交易情况对卡a的当前余额进行修改,即将卡a的当前余额从“90元”修改为“85元”(90元-5元=85元)。假设卡b在2016年4月2日没有进行任何交易,因此在卡a消费“5元”后,卡a和卡b在数据库中的存储内容可参见表格三。表格三账号信息交易记录备份日期前日余额(元)当前余额(元)卡a-52016-04-0210085卡b+1002016-04-010100进一步假设在2016年4月3日,卡a又消费10元,因此卡a的交易日期为2016年4月3日,在将卡a的交易日期与表格三中的备份日期相比较时,由于卡a的交易日期为2016年4月3日,而表格三中卡a的备份日期为2016年 4月2日,则可确定“卡a消费10元”为2016年04月03日的第一笔交易,因此可将卡a的当前余额“85元”作为前日余额,即将卡a的前日余额从“100元”修改为“85元”,并且还需将卡a的备份日期从2016年4月2日修改为2016年4月3日,同时还可根据交易情况对卡a的当前余额进行修改,即可将卡a的当前余额从“85元”修改为“75元”(85元-10元=75元)。进一步假设在2016年4月3日,卡b消费50元,因此卡b的交易日期为2016年4月3日,在将卡b的交易日期与表格三中的备份日期相比较时,由于卡b的交易日期为2016年4月3日,而表格三中卡b的备份日期为2016年4月1日,则可确定“卡b消费50元”为2016年04月03日的第一笔交易,因此可将卡b的当前余额“100元”作为前日余额,即将卡b的前日余额从“0元”修改为“100元”,并且还需将卡b的备份日期从2016年4月1日修改为2016年4月3日,同时还可根据交易情况对卡b的当前余额进行修改,即可将卡b的当前余额从“100元”修改为“50元”(100元-50元=50元)。因此在2016年4月3日卡a消费10元、卡b消费50元后后,卡a和卡b在数据库中的存储内容可参见表格四。表格四账号信息交易记录备份日期前日余额(元)当前余额(元)卡a-102016-04-038575卡b-502016-04-0310050需要说明的是,上述表格一至表格四中交易记录中的“+”号表示入账交易,“-”号表示出账交易或转账交易。当然,在交易记录中,还可采用其它的符号代表不同的交易类型,在此不再举例说明。根据上述内容可以看出,只在交易日期内的第一笔交易时,对账户信息的前日余额进行备份,即将账号信息的当前余额复制到前日余额进行备份,而对 交易日期内的第二笔交易、第三笔交易、第n笔交易以及交易日期内没有交易的账户的前日余额并未备份,由于在交易日期内未进行过交易的账户占总账户的大部分,因此减少了备份工作量,避免了冗余操作,从而优化了银行卡系统的性能。同时,由于针对有交易的账户,采取每个账户分散备份的方式还避免了同时备份造成的数据库长时间处于数据修改状态,导致这期间交易无法正常进行的问题,即针对有交易的账户,采取每个账户分散备份的方式,还可减少由于余额备份导致处理失败的交易量。基于相同构思,本发明实施例提供一种备份装置。图4为示例性示出了本发明实施提供的一种备份装置的结构示意,如图4所示,该装置可包括:接收模块401,用于接收交易请求,所述交易请求中包含账号信息和;并用于根据所述交易请求,确定交易日期;还用于获取所述账号信息对应的数据项,所述数据项包括备份日期、前日余额信息与当前余额信息;备份模块402,用于将所述数据项中的备份日期与所述交易日期进行比较,并在两者不相同时,确定所述交易请求为所述账号信息在所述交易日期内的第一笔交易;还用于将所述数据项中的当前余额信息备份到所述数据项中的前日余额信息;根据所述交易请求进行交易,在交易成功后,修改所述数据项中的当前余额信息,并将所述数据项中的备份日期修改为所述交易日期。较佳的,备份模块402还用于:在获取所述账号信息对应的数据项后,且在所述数据项中的备份日期与所述交易日期相同时,根据所述交易请求进行交易,在所述交易成功后,修改所述数据项中的当前余额信息。较佳的,接收模块401,还用于:接收前日余额查询请求,所述前日余额查询请求中包含账号信息;根据所 述前日余额查询请求,确定查询日期;根据所述账号信息获取所述账号信息对应的数据项;备份模块402还用于:将所述查询日期与所述数据项中的备份日期进行比较,并在两者不相同时,将所述数据项中的当前余额信息携带在查询响应消息中进行发送。较佳的,备份模块402,还用于:在所述查询日期与所述数据项中的备份日期相同时,将所述数据项中的前日余额信息携带在查询响应中进行发送。较佳的,备份模块402,还用于:在将所述数据项中的当前余额信息携带在查询响应消息中进行发送后,将所述数据项中的当前余额信息备份到所述数据项中的前日余额信息中。综上,本发明实施例中,在接收交易请求后,首先根据交易请求中的账号信息获取所述账号信息对应的数据项,并将数据项中的备份日期与根据交易请求确定的交易日期进行比较,在两者不相同时,确定所述交易请求为所述账号信息在所述交易日期内的第一笔交易,然后将所述数据项中的当前余额作为前日余额,最后根据交易请求进行交易,并在交易成功后,修改数据项中的当前余额,同时将数据项中的备份日期修改为交易日期。可以看出,只在交易日期内的第一笔交易时,对账户信息的前日余额进行备份,即将账号信息的当前余额复制到前日余额进行备份,而对交易日期内的第二笔交易、第三笔交易、第n笔交易以及交易日期内没有交易的账户的前日余额并未备份,由于在交易日期内未进行过交易的账户占总账户的大部分,因此减少了备份工作量,避免了冗余操作,从而优化了银行卡系统的性能。同时,由于针对有交易的账户,采取每个账户分散备份的方式还避免了同时备份造成的数据库长时间处于数据修改状态,导致这期间交易无法正常进行的问题,即针对有交易的账户,采取每个账户分散备份的方式,还可减少由于余额备份导致处理失败的交易量。本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件 和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1