核对业务系统数据的方法、装置及系统与流程

文档序号:12597406阅读:661来源:国知局
核对业务系统数据的方法、装置及系统与流程

本发明涉及电子商务领域,具体而言,涉及一种核对业务系统数据的方法、装置及系统。



背景技术:

现有的服务平台往往由多个不同的业务系统组成,例如第三方支付平台“支付宝”,支付宝包括上千个业务系统,任何一笔业务的进行都需要由多个系统相互协作来完成,而且多个业务系统之间的交互非常复杂,一旦其中某个系统出现异常,即有可能导致资损等非常严重的故障产生。

目前,往往通过数据核对来解决上述由于系统异常导致的资损问题,在执行数据核对的过程中,每一次的数据核对都要为每一个业务系统单独部署核对逻辑,随着服务平台业务量的增多,需要核对的数据的量也大大增加,例如,第三方支付平台“支付宝”目前需要部署的核对逻辑很快会超过1000条。

需要说明的是,每部署一条逻辑都要经过单独建表、数据清洗、数据比对、异常管理等过程,部署效率低。而且在部署核对逻辑的过程中,每单独部署一条核对逻辑,都要针对该条规则逻辑建立新的表,如果部署的核对规则数量多的话,必然导致建立的表数量多,例如,一千条逻辑总共需要建立5000张表,这会造成非常高的维护成本,而且规则太多,没办法统一管理。

由此可知,在业务系统之间完成数据核对的过程中,如果采用上述方案为每个业务系统部署单独的核对逻辑,由于单独部署的核对逻辑数量较大,使得业务系统之间的核对过程复杂、易出错且效率低下。

针对上述现有技术采用了为每个业务系统单独部署核对逻辑的方案,导致业务系统之间的数据核对效率低的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种核对业务系统数据的方法、装置及系统,以至少解决现有技术采用为每个业务系统单独部署核对逻辑的方案,导致业务系统之间的数据核对 效率低的问题。

根据本发明实施例的一个方面,提供了一种核对业务系统数据的方法,包括:将获取到的至少两个业务系统的业务数据保存至业务数据库;调用核对规则配置表中的至少一条核对规则;使用任意一条核对规则对业务数据库中的两个业务系统的业务数据进行清洗,得到任意一条核对规则对应的两个待核对的业务明细数据集;将任意一条核对规则对应的两个待核对的业务明细数据集进行关联对比,生成差异结果,其中,差异结果用于确定出现异常的业务系统。

根据本发明实施例的另一方面,还提供了一种核对业务系统数据的装置,包括:保存模块,用于将获取到的至少两个业务系统的业务数据保存至业务数据库;调用模块,用于调用核对规则配置表中的至少一条核对规则;清洗模块,用于使用任意一条核对规则对业务数据库中的两个业务系统的业务数据进行清洗,得到任意一条核对规则对应的两个待核对的业务明细数据集;核对模块,用于将任意一条核对规则对应的两个待核对的业务明细数据集进行关联对比,生成差异结果,其中,差异结果用于确定出现异常的业务系统。

根据本发明实施例的另一方面,还提供了一种核对业务系统数据的系统,包括:第一业务系统终端,用于生成第一业务数据集;第二业务系统终端,用于生成第二业务数据集;核对系统终端,与第一业务系统终端和第二业务系统终端分别进行通信,用于抽取第一业务数据集和第二业务数据集,并调用核对规则配置表中的核对规则对第一业务数据集和第二业务数据集进行清洗,得到两个待核对的业务明细数据集,通过将两个待核对的业务明细数据集进行关联对比,生成差异结果,其中,差异结果用于确定出现异常的业务系统。

根据本发明实施例的另一方面,还提供了一种核对系统终端,包括:存储器,用于存储业务数据库,业务数据库用于保存获取到的至少两个业务系统的业务数据;核对处理器,用于根据核对规则配置表中的至少一条核对规则对存储器中的两个业务系统的业务数据进行清洗,并将清洗得到的两个待核对的业务明细数据集进行关联对比,生成差异结果,其中,差异结果用于确定出现异常的业务系统。

在本发明实施例中,采用将获取到的至少两个业务系统的业务数据保存至业务数据库;调用核对规则配置表中的至少一条核对规则;使用任意一条核对规则对业务数据库中的两个业务系统的业务数据进行清洗,得到任意一条核对规则对应的两个待核对的业务明细数据集;将任意一条核对规则对应的两个待核对的业务明细数据集进行关联对比,生成差异结果,其中,差异结果用于确定出现异常的业务系统,解决了现有技术采用为每个业务系统单独部署核对逻辑的方案,导致业务系统之间的数据核对 效率低的问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例一的核对业务系统数据的方法的计算机终端的硬件结构框图;

图2根据本发明实施例一的核对业务系统数据的方法的流程图;

图3是根据本发明实施例一的核对业务系统数据的方法的示意图;

图4是根据本发明实施例二的核对业务系统数据的装置的示意图;

图5是根据本发明实施例二的可选的核对业务系统数据的装置的示意图;

图6是根据本发明实施例二的可选的核对业务系统数据的装置的示意图;

图7是根据本发明实施例二的可选的核对业务系统数据的装置的示意图;

图8是根据本发明实施例三的核对业务系统数据的系统的示意图;

图9是根据本发明实施例四的核对业务系统终端的示意图;以及

图10是是根据本发明实施例的一种计算机终端的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚 地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

下面对本申请的涉及到的专业词汇解释如下:

1、数据仓库:是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,该数据集合可用于支持企业的管理决策(Decision Making Support)。

2、ODPS:开放数据处理服务(Open Data Processing Service,简称ODPS),是阿里巴巴集团研发的一种数据仓库工具。

3、hive:是基于Hadoop的一个开源数据仓库工具,该工具可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,hive也可以将sql语句转换为MapReduce任务后进行运行。

4、业务核对:一笔业务的正常进行,往往依赖多个系统的协作,由于系统都有可能存在一定的漏洞,导致一笔业务在各个系统中的状态不同,如交易系统中的交易已经成功,但是账务系统中买家并没有实际付款,因而需要通过不同系统间数据的核对来发现这种情况,从而达到资损防控的目的。

实施例1

根据本发明实施例,还提供了一种核对业务系统数据的方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种核对业务系统数据的方法的计算机终端的硬件结构框图。如图1所示,用于核对多个业务系统的业务数据的计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。

存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的核对业务系统数据的方法对应的程序指令/模块,处理器102通过运行存储在存储器104 内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的漏洞检测方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。

在上述运行环境下,本申请提供了如图2所示的核对业务系统数据的方法。图2是根据本发明实施例一的核对业务系统数据的方法的流程图,该方法包括:

步骤S20,可以通过计算机终端10将获取到的至少两个业务系统的业务数据保存至业务数据库。

本申请上述步骤S20中,上述至少两个业务系统可以为交易系统、账务系统、在线充值系统、提现系统、商家服务系统等多个业务系统。在本方案中,可以将上述多个业务系统生成的业务数据统一保存至业务数据库,以供数据核对时使用。

具体的,服务平台的多个业务系统每天都会生成了大量的业务数据,在每天凌晨时,可以采用数据同步工具从前端业务系统来抽取多个业务系统中的前一天的业务数据,并将上述多个业务系统中的前一天的业务数据落地到数据仓库,即上述业务数据库中。以对服务平台中的账务系统和交易系统进行核对为例,计算机终端10可以使用数据同步工具在规定时间内获取账务系统和交易系统在预定时间段内的业务数据,并保存至业务数据库。

步骤S22,可以通过计算机终端10调用核对规则配置表中的至少一条核对规则。

本申请上述步骤S22中,可以由开发人员在系统中预先设置一个核对规则配置表,在核对规则配置表中预先配置多条核对规则,每个条核对规则中可以记录具体由哪两个业务系统进行差异对比以及比较的具体内容是什么。

需要说明的是,每条核对规则都对应着上述步骤S20中的业务数据库中的两个业务系统,可选的,开发人员预先配置的多个核对规则可以存放在一个表中,即上述核对规则配置表,以供数据核对即业务核对时调用。

此处还需要说明的是,在进行数据核对时,可以调用上述核对规则配置表中的任意一条核对规则,也可以同时调用任意多条核对规则。

步骤S24,可以通过计算机终端10来实现使用任意一条核对规则对业务数据库中的两个业务系统的业务数据进行清洗,得到任意一条核对规则对应的两个待核对的业务明细数据集。

本申请上述步骤S24中,在任意一条核对规则中可以至少包括两个大字段,上述两个大字段可以用于存放两个SQL语句,可以采用上述两个SQL语句对上述业务数据库中的业务数据进行清洗,以得到特定数据,该特定数据为上述任意一条核对规则所对应的两个业务系统的业务数据即上述待核对的业务明细数据集。

仍旧以对服务平台中的账务系统和交易系统进行核对为例,如果想对平台服务系统中的账务系统和交易系统中的业务数据进行核对,可以预先在核对规则配置表配置第一核对规则,并使用该第一核对规则来对业务数据库中的业务数据进行清洗,以得到上述第一核对规则对应的两个待核对的业务明细数据集,其中,上述两个待核对的业务明细数据集分别是账务系统以及交易系统中经过筛选或清洗产生的业务数据。

由此可知,本申请提供的实施例通过统一设置核对规则配置表及表中的核对规则,来实现各类业务核对需求的通用化配置,该核对规则配置表对于各个业务系统是一套通用模型,该通用模型将通用的功能模块进行封装,可以容纳所有的业务核对过程中所要执行的清洗规则的部署,而且每个清洗规则可以通过采用SQL语句的方式来实现只关注个性化的部分,即每个业务系统的通用信息部分,也是各个业务系统之间需要进行核对的业务数据的部分。因此,在业务核对过程中,系统无需对每一条核对逻辑建立数量庞大的数据表,通过核对规则配置表将各个业务系统之间的核对逻辑进行统一管理,使用者只需要采用数据清洗的方式来关注个性化的部分,这种清洗得到的仅是需要核对的数据本身,而无需关注该数据所代表的业务含义,大大减轻了工作人员配置核对逻辑的工作量,并提高了系统进行业务数据核对的效率。

步骤S26,可以通过计算机终端10将任意一条核对规则对应的两个待核对的业务明细数据集进行关联对比,生成差异结果,其中,差异结果用于确定出现异常的业务系统。

本申请上述步骤S26中,可以采用通过计算机终端10中的数据对比功能模块对获取到的两个待核对的业务明细数据集进行关联对比,并通过关联对比产生的差异结果确定出现异常的业务系统。

仍旧以对服务平台中的账务系统和交易系统进行核对为例,可以使用上述第一核 对规则对业务数据库中账务系统和交易系统的业务数据进行清洗,获取第一业务明细数据集以及第二业务明细数据集,其中,第一业务明细数据集为从业务数据库中账务系统的业务数据中筛选得出,第二业务明细数据集为从业务数据库中交易系统的业务数据中筛选得出,在本方案中可以采用计算机终端10中的数据对比功能模块对上述第一业务数据集以及第二业务数据集关联对比,产生差异结果,并通过该差异结果出现异常的业务系统即出现异常的业务系统具体是账务系统还是交易系统。

由上可知,在本实施例一提供的方案中,可以提供一种核对平台,该核对平台预先将多个业务系统产生的业务数据预存至业务数据库中,通过该核对平台可以统一在核对规则配置表中同时配置多条核对规则,在调用核对规则配置表中的任意一条核对规则对业务数据库中的业务数据进行清洗之后,可以得到核对规则对应的两条业务明细数据集,并对上述两条业务明细数据集进行关联对比产生差异结果,根据差异结果确定出现异常的业务系统,实现了只需要配置核对规则就可以完成多个业务系统中业务数据的核对,解决了现有技术采用了为每个业务系统单独部署核对逻辑的方案,导致业务系统之间的数据核对效率低的问题。

本申请提供的一种可选实施例中,本申请上述实施例中建立的核对规则配置表中的核对规则至少可以包括如下数据字段:主键标识、业务数据清洗字段和业务数据还原字段。优选地,上述主键标识可以包括:用于表征业务系统的业务类型标识和/或业务操作类型标识。

具体的,本申请上述实施例中建立的核对规则配置表由至少一条上述核对规则组成,每条核对规则在核对规则配置表中抽象为一条记录,任意一条记录都至少包括以下几部分:主键标识字段、业务数据清洗字段和业务数据还原字段。

下面对本申请上述核对规则中的各个数据字段的含义和作用进行详细解释如下:

主键标识字段:是一条唯一标识核对规则的数据字段,核对规则配置表中的每条核对规则对应一个唯一的主键标识。该主键标识可以通过一个业务系统的业务类型标识(如下表1中的biz_type)和/或业务操作类型标识(例如下表1中的action_type)来记录。

上述业务类型标识用于表征当前需要核对的两个业务系统的核对类型,业务操作类型标识用于表征两个业务系统中需要对哪个或哪些业务操作产生的业务数据进行核对,例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,业务操作类型标识可以为资金变动类型(资金变动类型指定该笔资金变动的类型,包括支付、退款、销账等)。

一种可选实施例中,当主键标识为业务类型标识(如表1中的biz_type)和业务操作类型标识(例如表中的action_type)的组合时,他们构成该核对规则的一个联合主键,目的在于使得后续的核对过程和核对结果的确认更加准确。

业务数据清洗字段:使用业务数据清洗字段中记录的字段内容可以实现对业务数据库中的业务数据进行清洗,例如,可以采用SQL语言实现从业务数据库中查询该核对规则对应的两条待核对的业务明细数据集。

具体的,上述业务清洗字段可以是核对规则中的两个大字段,上述两个大字段可以用于存放两个通用的SQL(insert)语句,通过执行上述两个通用的SQL语句可以对业务数据库中存储的第一业务系统的业务数据和第二业务系统的业务数据分别进行数据清洗,以得到两个待核对的业务明细数据集。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,可以利用执行上述核对规则记录的两个通用的SQL(insert)语句将业务数据数据库中的业务数据进行清洗,得到两个待核对的业务明细数据集:第一业务明细数据集以及第二业务明细数据集,其中,上述第一业务明细数据为由业务数据库中账务系统的数据经过筛选得来,上述第二业务明细数据为由业务数据库中交易系统的数据经过筛选得来。

业务数据还原字段:使用业务数据还原字段可以还原被清洗的业务数据的具体含义,即被清洗的业务数据具体是属于哪个业务系统以及业务系统中的哪条业务。

具体的,上述业务数据还原字段可以为字段元数据信息,该字段元数据信息用于表征将业务数据库中的哪些业务系统中的“哪些字段,按什么顺序”被清洗。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,在配置规则记录的字段元数据信息则用于表征着被清洗的业务数据是源于账务系统,还是交易系统。

需要说明的是,上述核对规则配置表中的核对规则所包含的数据字段可以预先创建,一种可选的核对规则配置表可以如下表1所示:

表1:

此处需要说明的是,本申请上述核对规则还可以包括一个数据字段:差异结果提醒字段,该字段用于表征差异结果的通知对象,目的在于当得出差异结果时,将上述差异结果发送给相关的处理设备,一种情况下,相关负责人会通过处理设备来对差异结果进一步核对。

具体的,该差异提醒字段可以为owner信息,即相关负责人的地址。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,在将账务系统以及交易系统中的业务数据进行清洗之后得到两个待核对的业务明细数据集,再将上述两个待核对的业务明细数据集进行关联对比之后生成差异结果,通过上述差异提醒字段将上述差异结果发送给相关的负责人。

基于上述核对配置表中预先配置的至少一条核对规则,本申请提供的一种可选的实施例中,上述步骤S24,使用任意一条核对规则对业务数据库中的两个业务系统的业务数据进行清洗,得到任意一条核对规则对应的两个待核对的业务明细数据集的方 案可以通过如下可选的实施步骤来实现:

步骤S241,根据任意一条核对规则所包含的业务数据清洗字段确定业务数据库中待核对的两个业务系统。

步骤S242,根据业务数据清洗字段中的通用数据名称对待核对的两个业务系统的业务数据分别进行筛选,生成任意一条核对规则对应的两个待核对的业务明细数据集。

具体的,在上述步骤S241至步骤S242中,可以通过执行业务数据清洗字段中存放的两个SQL语句来确定业务数据库中待核对的两个业务系统并对待核对的两个业务系统中的业务数据进行筛选,产生核对规则对应的两个待核对的业务明细数据集。

需要说明的是,在上述业务清洗字段中存放的两个SQL语句中还可以保存通用数据名称,通过执行上述两个SQL语句在上述确定的两个业务系统的业务数据中按照通用数据名称对业务数据进行筛选,以将符合条件的业务数据筛选出来,形成两个待核对的业务明细数据集。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,可以利用上述业务数据清洗字段将业务数据数据库中的业务数据进行清洗,得到待核对的业务明细数据集:账务系统中的业务明细数据集以及交易系统中的业务明细数据集,其中,由账务系统和交易系统中的业务数据进行筛选得出的上述两个业务明细数据集都包含有通用的数据名称。

此处需要说明的是,可以调用计算机终端10中的清洗规则执行程序来执行上述两个SQL语句,当每个规则中的SQL语句都被执行完毕的时候,所有的待核对的业务数据都被筛选出来。

可选的,上述任意一条核对规则对应的两个待核对的业务明细数据集包括:第一业务明细数据集和第二业务明细数据集,其中,基于上述核对配置表中预先配置的至少一条核对规则,本申请提供的一种可选的实施例中,在步骤S242,生成任意一条核对规则对应的两个待核对的业务明细数据集之后,本实施例提供的方法还可以包括:

步骤S243,将任意一条核对规则中包含的主键标识和第一业务明细数据集关联之后插入第一公共表,并将任意一条核对规则中包含的主键标识字段和第二业务明细数据集关联之后插入第二公共表。

在上述步骤S243中,可以预先定义两个公共表,第一公共表和第二公共表,本申请设定公共表的目的在于可以将每条核对规则清洗得到的两个业务明细数据集都分别保存在上述第一公共表和第二公共表中,而不会为清洗得到的每个业务明细数据集都 建立一个数据表,解决了针对每一条核对规则都要单独建立多数量的表,导致核对时间成本大的问题。

由于任意一条核对规则用于清洗两个业务系统,上述两个业务系统中经过筛选得出的待核对的业务数据集可以分别为上述第一业务明细数据集和第二业务明细数据集,而且,任意一条核对规则中都保存着唯一的主键标识,因此在本方案中,在产生第一业务明细数据集和第二业务明细数据集之后,可以将第一业务明细数据集同主键标识关联之后存入第一公共表,并将第二业务明细数据集同主键标识关联之后存入第二公共表。这种在公共表中保存每个核对规则对应的主键标识可以区分每个业务明细数据集的来源,使得比对结果准确。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,在本方案中可以预先定义两张公共表即表A和表B。通过核对配置表中的第一核对规则对业务数据库进行筛选,得到第一业务数据集和第二业务数据集,其中,上述第一业务数据集为从账务系统中的业务数据筛选而产生,第二业务数据集为从交易系统中的业务数据筛选而产生,其中,上述第一核对规则中保存着唯一的主键标识,在本方案中,可以将第一核对规则的主键标识与第一业务数据集关联之后存入表A,将第一核对规则的主键标识与第二业务数据集关联之后存入表B。

这里还需要说明的是,上述将业务数据插入到两个公共表中的步骤可以通过执行上述两个SQL语句来完成。

可选的,基于上述核对规则配置表中预先配置的至少一条核对规则,本申请提供的一种可选的实施例中,步骤S26,将任意一条核对规则对应的两个待核对的业务明细数据集进行关联对比,生成差异结果的步骤可以采用如下任意一个方案来实现:

方案一:

步骤100,将第一公共表与第二公共表进行左关联,得到的差异结果可以包括:第一公共表中关联失败的业务明细数据及其关联的主键标识。

在上述步骤S100中,上述第一公共表中关联失败的业务明细数据可以为上述第一公共表关联不上的业务数据。具体的,可以采用计算机终端10中的数据比对功能模块来对上述第一公共表和第二公共表中的业务数据进行左关联对比,在本方案中,具体的关联过程可以为:首先将第一公共表和第二公共表中的所有字段作为关联键,将两张公共表中的空字段处理成恒等的特殊默认值,然后进行关联对比,并将第一公共表关联不上第二公共表的业务数据和上述第一业务数据集关联的主键标识作为差异结果。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,账务系统经过 筛选产生第一业务数据集,交易系统经过筛选产生第二业务数据集,将第一业务数据集和第二业务数据集分别同上述第一核对规则中保存的主键标识进行关联后存入表A和表B,然后将表A和表B中的字段进行左关联,将表A关联失败的业务明细数据以及表A关联的第一核对规则中的主键标识作为差异结果R1,需要说明的是,上述差异结果R1用于表征账务系统相对于交易系统中的数据差异。

步骤S120,将差异结果保存至差异结果表中。

在上述步骤S120,上述差异结果表可以为预先定义的第三公共表,具体的,可以将步骤S100中生成的差异结果存入第三公共表。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,在定义上述表A和表B之外,再定义一张公共表表C。将表A关联失败的业务明细数据以及表A关联的第一核对规则中的主键标识作为差异结果R1存入表C。

方案二:

步骤210,将第二公共表与第一公共表进行左关联,得到的差异结果可以包括:第二公共表中关联失败的业务明细数据及其关联的主键标识。

在上述步骤S210中,上述第二公共表中关联失败的业务明细数据可以为上述第二公共表关联不上的业务数据。具体的,可以采用计算机终端10中的数据比对功能模块来对上述第二公共表和第一公共表中的业务数据进行左关联对比,在本方案中,具体的关联过程可以为:首先将第二公共表和第一公共表中的所有字段作为关联键,将两张公共表中的空字段处理成恒等的特殊默认值,然后进行关联对比,并将第二公共表关联不上第一公共表的业务数据和上述第二业务数据集关联的主键标识作为差异结果。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,账务系统经过筛选产生第一业务数据集,交易系统经过筛选产生第二业务数据集,将第一业务数据集和第二业务数据集分别同上述第一核对规则中保存的主键标识进行关联后存入表A和表B,然后将表B和表A中的字段进行左关联,将表B关联失败的业务明细数据以及表B关联的第一核对规则中的主键标识作为差异结果R2,需要说明的是,上述差异结果R2用于表征交易系统相对于账务系统中的数据差异。

步骤220,将差异结果保存至差异结果表中。

在上述步骤S220中,上述差异结果表可以为预先定义的第四公共表,具体的,可以将步骤S210中生成的差异结果存入第四公共表。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,在定义上述表 A和表B之外,再定义一张公共表表D。将表B关联失败的业务明细数据以及表B关联的第一核对规则中的主键标识作为差异结果R2存入表D。

方案三:

步骤S310,将第一公共表与第二公共表进行左关联,并将第二公共表与第一公共表进行左关联,得到的差异结果可以包括:第一公共表中关联失败的业务明细数据及其关联的主键标识,以及第二公共表中关联失败的业务明细数据及其关联的主键标识。

在上述步骤S310中,上述第一公共表中关联失败的业务明细数据可以为上述第一公共表关联不上的业务数据。上述第二公共表中关联失败的业务明细数据可以为上述第二公共表关联不上的业务数据。具体的,可以采用计算机终端10中的数据比对功能模块来对上述第一公共表和第二公共表中的业务数据进行左关联对比,再对上述第二公共表和第一公共表中的业务数据进行左关联对比。在本方案中,具体的关联过程可以为:首先将第一公共表和第二公共表中的所有字段作为关联键,将两张公共表中的空字段处理成恒等的特殊默认值,然后进行关联对比,并将第一公共表关联不上第二公共表的业务数据和上述第一业务数据集关联的主键标识作为差异结果R1,将第二公共表关联不上第一公共表的业务数据和上述第一业务数据集关联的主键标识作为差异结果R2。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,账务系统经过筛选产生第一业务数据集,交易系统经过筛选产生第二业务数据集,将第一业务数据集和第二业务数据集分别同上述第一核对规则中保存的主键标识进行关联后存入表A和表B,然后将表A和表B中的字段进行左关联,将表A关联失败的业务明细数据以及表A关联的第一核对规则中的主键标识作为差异结果R1,将表B关联失败的业务明细数据以及表B关联的第一核对规则中的主键标识作为差异结果R2,其中,上述差异结果R1用于表征账务系统相对于交易系统中的数据差异,上述差异结果R2用于表征交易系统相对于账务系统中的数据差异。

步骤S320,将差异结果保存至差异结果表中,其中,差异结果表包括:用于保存第一公共表中关联失败的业务明细数据及其关联的主键标识的第一差异结果表,以及,用于保存第二公共表中关联失败的业务明细数据及其关联的主键标识的第二差异结果表。

在上述步骤S320,上述第一差异结果表可以为预先定义的第三公共表,上述第二差异结果表可以为预先定义的第四公共表,具体的,可以将步骤S310中生成的差异结果R1和R2分别存入第三公共表以及第四公共表。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,在定义上述表A和表B之外,再定义公共表表C以及公共表表D。具体的,将表A关联失败的业务明细数据以及表A关联的第一核对规则中的主键标识作为差异结果R1存入表C,再将表B关联失败的业务明细数据以及表B关联的第一核对规则中的主键标识作为差异结果R2存入表D。

此处需要说明的是,上述三个方案中定义的第一公共表、第二公共表、第三公共表、第四公共表分别对应公共表A、公共表B、公共表C以及公共表D。在定义上述公共表A\B\C\D时,四张表除了名字,其余的结构都相同。

在一种可选的实施例当中,在定义第一公共表和第二公共表时,第一公共表和第二公共表的名称可以为dwb_fnd_manual_biz_check_unit_ds和dwb_fnd_manual_oth_check_unit_ds。

需要说明的是,方案三作为本发明的一个优选的方案,不同于方案一与方案二,方案三为双边核对,即要经过两次左关联,生成两个差异结果,分别为第一公共表相对于第二公共表的差异结果,以及第二公共表相对于第一公共表的差异结果,并将上述两个差异结果同时存入差异结果表即上述第三公共表和第四公共表。

这里还需要说明的是,在将上述两个公共表进行比对的过程中,比对的规则可以如下:将第一公共表中的第一个字段与第二公共表中的第一个字段进行比对,将第一公共表中的第二个字段与第二公共表中的第二个字段进行比对,依次类推,并且在两个公共表中的字段只分字符型和数值型,字段的本身不具有业务含义。

这里还需要说明的是,在上述三个方案中的产生两个公共表中差异结果的过程中,在第一公共表中可以包含多个业务系统中的业务数据,在第二公共表中也可以包含多个业务系统中的业务数据,比对规则可以为如下:例如,第一公共表中的某一个业务明细数据自身关联的主键标识为K,那么将第二公共表中的关联的主键标识也为K的业务明细数据作为与第一公共表中的业务明细数据的对比对象。总之,待核对的两个业务明细数据的主键标识为相同的。通过此种方式,可以使得只利用两张表格:第一公共表和第二公共表即可以实现所有待核对业务明细数据的对比。

可选的,基于上述核对配置表中预先配置的至少一条核对规则,本申请提供的一种可选的实施例中,在将差异结果保存至差异结果表之后,本实施例提供的方法还可以包括:

步骤S40,根据差异结果表中记录的主键标识定位到核对规则配置表中的一条核对规则。

在上述步骤S40中,由上述三个方案可知,在差异结果表中保存的关联失败的业务明细数据和与关联失败的业务明细数据关联的主键标识,该主键标识为某一核对规则的唯一标识,因此可以根据差异结果表中的保存的主键标识定位到核对规则。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,通过执行配置表中的第一核对规则中的两个SQL语句将业务数据库中的业务数据进行清洗,得到两个业务明细数据集,第一业务明细数据集以及第二业务明细数据集,其中,第一业务明细数据集为从账务系统业务数据筛选而来,第二业务明细数据集为从交易系统业务数据筛选而来,可选的,可以预先建立四张统一结构的公共表A\B\C\D,其中,表A用于存放第一业务明细数据集,表B用于存放第二业务明细数据集,将表A与表B进行左关联,产生第一差异结果并将第一差异结果存入表C,将表B与表A进行左关联,产生第二差异结果并存入表D,因为在核对规则中包含着主键标识,在对业务数据库中的业务数据进行清洗的过程中,将第一核对规则的主键标识同样清洗到公共表A和公共表B中,表C和表D来源于公共表A和公共表B,因此表C和表D也包含上述第一核对规则的主键标识,所以可以通过表C和表D中的主键标识定位到配置表中的第一核对规则。

这里需要说明的是,在定义上述公共表A\B\C\D时,四张表除了名字,其余的结构都相同。

步骤S42,根据定位到的这条核对规则中的业务数据还原字段确定出现异常的业务系统,其中,业务数据还原字段记录了定位到的这条核对规则所清洗的业务数据的元数据信息。

在上述步骤S42中,上述元数据信息可以是配置表中任一核对规则中记录的字段元数据信息,该字段元数据信息可以用于标识将业务数据库中的哪些字段、按什么顺序清洗进公共表的,即核对规则是将哪个业务系统的哪个具体的业务数据清洗进的公共表,因此可以通过上述还原字段记录的元数据信息确定出现异常的业务系统。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,在通过表C和表D中的主键标识定位到配置表中的第一核对规则之后,可以根据上述第一核对规则中记录的业务还原字段对表C和表D中的差异结果进行还原,即确定出现异常的业务系统为上述账务系统和交易系统。

此处需要说明的是,差异结果表即第三公共表以及第四公共表中的业务数据虽然都来自业务数据库,但是在差异结果表中的字段只分为字符型和数值型,字段本身不具备业务含义,因此差异结果表中的固定字段-主键标识来定位到相应的核对规则,再 通过相应核对规则中保存的元数据信息来还原被清洗的业务数据本身的含义。

下面就结合图3,将本申请的方案应用在上述支付宝中的核对系统所实现的功能进行详细描述:

步骤S08,将多个业务系统生成的数据存储在业务数据库中。

具体的,每天凌晨,数据同步工具会从前端业务系统抽取业务系统前一天的业务数据,并落地到数据仓库中,这是数据仓库的ETL过程;本方案基于这些被抽取到数据仓库的业务数据来进行比对。

步骤S10,建立一张核对规则配置表。

具体的,在上述核对规则配置表中,一条核对规则被抽象成一条记录,每条记录主要包含四个部分:第一部分是核对规则的主键标识biz_type+action_type,这两个字段的值会被作为普通字段值带入到第一公共表以及第二公共表中,因为业务数据库中的业务数据一旦进入到两个公共表中即失去了原有的业务含义,故先用上述主键标识来表征业务数据由哪条核对规则清洗进公共表,以便后续根据主键标识还原被清洗的业务数据本来的业务含义;第二部分是两个大字段,用来存放两个SQL(insert)语句,上述两个SQL(insert)语句用于将业务数据清洗进入第一公共表以及第二公共表;第三部分是字段元数据信息,用以标识通过核对规则将业务数据库中的“哪些字段,按什么顺序”存入第一公共表以及第二公共表的;第四部分是该规则的owner信息,以及差异结果通知人信息。

需要说明的是,上述核对规则配置表是预先建好的,表中的内容如表1所示。:

步骤S12,建立四张统一结构的公共表A\B\C\D.

具体的,表A和表B用于保存图3的两个清洗后的数据集G1和清洗后的数据集G2,表C和表D用于保存图3的核对结果集G10和G20;表A和表B用于存放通过每个核对规则筛选生成的业务明细数据,表C和表D用于存放表A和表B关联比对后所产生的差异记录。

例如,要将交易系统与账务系统的数据进行核对时,就把交易系统的数据清洗后生成清洗后的数据集G1插入到A表中,将账务系统的数据清洗后生成清洗后的数据集G2插入到B表中,表A和表B经过关联比对,生成表A相对于表B的差异结果即图3中的核对结果集G10并存入C表,生成表B相对于表A的差异结果即图3中的核对结果集G20并存入D表,需要说明的是,表A和表B中的内容要按照按比对的对应关系来保存,因为要将表A中第一个字段和表B中第一个字段比对,表A中第二个字段与 表B中的第二个字段比对,以此类推,公共表A\B\C\D中的字段只分字符型和数值型,字段本身不具备业务含义。需要说明的是,在定义上述四个公共表时,四个公共表的名称不同,其他的内容完全一致。

步骤S14,可以采用图3中的清洗规则执行器501和清洗规则执行器502调用每条核对规则中的两个SQL(insert)语句进行执行,待所有核对规则执行完毕后,业务数据库中的业务数据都已经被清洗完毕形成图3中的清洗后的数据集G1和G2,并进入公共表A和B等待比对。

此时需要说明的是,清洗规则执行器501和清洗规则执行器502可以为计算机终端10中的两个程序,作用为执行核对规则中的两个SQL(insert)语句从业务数据库中抽取特定的业务数据。

步骤S16,可以采用数据比对功能模块503将表A和表B中的清洗后的数据集进行比对,先用表A与表B做左外关联,将表A与表B中的所有字段作为关联键,将表A与表B中的空字段处理成恒等的特殊默认值,再进行左外关联,并将A中关联不上的记录生成核对结果集G10存入表C;先用表B与表A做左外关联,将表B与表A中的所有字段作为关联键,将表B与表A中的空字段处理成恒等的特殊默认值,再进行左外关联,并将B中关联不上的记录生成核对结果集G20存入表C。

步骤S18,采用核对结果解析器504基于表C和表D中记录的主键标识定位到该清洗后的数据集G1和G2是根据哪条核对规则清洗而来的,再通过核对规则中的中的字段名称及顺序信息对表C和表D中的差异结果(核对结果)数据进行业务含义还原。

需要说明的是,每条核对规则记录里有两个大字段,分别是:

从上段的代码中,可知,通过主键标识为partition(dt,biz_type,action_type)的核对规则将两个业务系统alipaydw.ods_message_send以及ods_fnd_settle_online_deposit_dd中符合一定条件的业务数据插入到两个公共表中,上述两个公共表分别是dwb_fnd_manual_biz_check_unit_ds和dwb_fnd_manual_oth_check_unit_ds。上述条件分别是:

由这两个SQL的内容可知,核对规则中的主键标识biz_type和action_type作为固定的字段被带到待核对的数据集中去了;也就是说,通过公共表dwb_fnd_manual_biz_check_unit_ds和dwb_fnd_manual_oth_check_unit_ds中的这主键标识的值就可以判断被清洗的业务数据源于哪条规则;通过biz_type和action_type的值,就可以知道被清洗的业务数据代表着什么样的业务含义了。

步骤S19,从核对规则配置表中取出规则差异接收人信息,将有业务含义的差异结果发给对应的接口人即差异接收人,由接口人跟踪差异结果并给出解释。

综上,本申请通过预先将多个业务系统的业务数据存入业务数据库中,再配置核对规则并将字段元数据、主键标识等信息进行保存,在调用核对规则时,将所有待核对的数据清洗到固定的两张公共表中;对两张公共表中的数据进行统一比对,并生成统一的差异结果集;利用核对规则中的元数据对差异结果集进行解析即还原被清洗的业务数据本来的业务含义,可以实现如下效果:

1、可以把所有的数据核对规则都部署核对规则配置表。

2、只需要几张公共表,新增核对规则不再需要新增表。

3、把数据核对等通用功能都封装起来,在进行部署核对规则时只需要考虑数据清洗规则。

此处需要说明的是,本实施例可以提供一种核对平台,该核对平台可以支持所有核对规则的接入,该核对平台也支持了开发人员自己通过页面点击等简单操作部署核对规则从而进行多个业务系统的数据核对。

需要说明的是,本申请方案核心要解决的问题是将核对这一工作抽象化,归一化,提供统一的模型来容纳所有的核对规则,而避免单点部署的困扰;进而使得通过配置来部署核对规则成为可能;核心理念就是关注核对的本质,即数据是否相等,而忽略数据所代表的业务含义。本申请采用通用化的模型整合了所有的核对规则,通用功能被封装成特定模块,大大简化了核对规则的部署和统一维护,极大的提高了核对规则部署效率。

还需要说明的是,本方案利用了TCL实现了程序调用等功能,底层计算及存储用的是集团的ODPS集群;利用其它嵌入式脚本语言(如:perl、shell等)配合hive等分布式系统均可实现本发明。

还需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但 很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

实施例2

根据本发明实施例,还提供了一种用于实施上述核对业务系统数据的方法的装置,如图4所示,该装置包括:保存模块40,调用模块42,清洗模块44,核对模块46。

其中,保存模块40,用于将获取到的至少两个业务系统的业务数据保存至业务数据库;调用模块42,用于调用核对规则配置表中的至少一条核对规则;清洗模块44,用于使用任意一条核对规则对业务数据库中的两个业务系统的业务数据进行清洗,得到任意一条核对规则对应的两个待核对的业务明细数据集;核对模块46,用于将任意一条核对规则对应的两个待核对的业务明细数据集进行关联对比,生成差异结果,其中,差异结果用于确定出现异常的业务系统。

此处需要说明的是,上述保存模块40,调用模块42,清洗模块44,核对模块46对应于实施例一中的步骤S20至步骤S26,四个单元与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。

由上可知,在本实施例二提供的方案中,可以提供一种核对平台,该核对平台预先将多个业务系统产生的业务数据预存至业务数据库中,开发人员通过该核对平台可以统一在核对规则配置表中同时配置多条核对规则,通过调用核对规则配置表中的任意一条核对规则对业务数据库中的业务数据进行清洗,得到核对规则对应的两条业务明细数据集,并对上述两条业务明细数据集进行关联对比产生差异结果,根据差异结果确定出现异常的业务系统,实现了开发人员只需要配置核对规则就可以完成多个业务系统中业务数据的核对,解决了现有技术采用了为每个业务系统单独部署核对逻辑的方案,导致业务系统之间的数据核对效率低的问题。

可选的,上述核对规则至少包括如下数据字段:主键标识、业务数据清洗字段和业务数据还原字段。

需要说明的是,上述核对规则配置表中的任意一个核对规则都可以包括:主键标识,该主键标识作为每条核对规则的主键ID,业务清洗字段即上述两个大字段,用于存放两个SQL语句,两个SQL语句用于对业务数据进行清洗。业务数据还原字段,用 于还原出现异常是哪个具体业务系统。

可选的,如图5所示,清洗模块44可以包括:确定模块441,筛选模块442。

其中,确定模块441,用于根据任意一条核对规则所包含的业务数据清洗字段确定业务数据库中待核对的两个业务系统。筛选模块442,用于根据业务数据清洗字段中的通用数据名称对待核对的两个业务系统的业务数据分别进行筛选,生成任意一条核对规则对应的两个待核对的业务明细数据集。

此处需要说明的是,上述确定模块441,筛选模块442对应于实施例一中的步骤S241至步骤S242,两个模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。

可选的,上述任意一条核对规则对应的两个待核对的业务明细数据集包括:第一业务明细数据集和第二业务明细数据集,其中,在执行筛选模块之后,如图6所示,实施例二提供的装置还包括:第一插入模块443,第二插入模块444。

其中,第一插入模块443,用于将任意一条核对规则中包含的主键标识和第一业务明细数据集关联之后插入第一公共表;第二插入模块444,用于将任意一条核对规则中包含的主键标识字段和第二业务明细数据集关联之后插入第二公共表。

此处需要说明的是,上述第一插入模块443,第二插入模块444对应于实施例一中的步骤S243,两个模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。

可选的,核对模块46可以包括:第一左关联模块461,第一存储模块462。

其中,第一左关联模块461,用于将第一公共表与第二公共表进行左关联,差异结果包括:第一公共表中关联失败的业务明细数据及其关联的主键标识。第一存储模块462,用于将差异结果保存至差异结果表中。

此处需要说明的是,上述第一左关联模块461,第一存储模块462对应于实施例一中的步骤S100至步骤S120,两个模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。

可选的,核对模块46还可以包括:第二左关联模块463,第二存储模块464。

其中,第二左关联模块463,用于将第二公共表与第一公共表进行左关联,差异结果包括:第二公共表中关联失败的业务明细数据及其关联的主键标识;第二存储模块464,用于将差异结果保存至差异结果表中。

此处需要说明的是,上述第二左关联模块463,第二存储模块464对应于实施例一中的步骤S210至步骤S220,两个模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。

可选的,核对模块46包括:关联处理模块465,第三存储模块466。

其中,关联处理模块465,用于将第一公共表与第二公共表进行左关联,并将第二公共表与第一公共表进行左关联,差异结果包括:第一公共表中关联失败的业务明细数据及其关联的主键标识,以及第二公共表中关联失败的业务明细数据及其关联的主键标识;第三存储模块466,用于将差异结果保存至差异结果表中,其中,差异结果表包括:用于保存第一公共表中关联失败的业务明细数据及其关联的主键标识的第一差异结果表,以及,用于保存第二公共表中关联失败的业务明细数据及其关联的主键标识的第二差异结果表。

此处需要说明的是,上述关联处理模块465,第三存储模块466对应于实施例一中的步骤S310至步骤S320,两个模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。

可选的,如图7所示,本实施例二提供的装置还可以包括:定位模块48,还原模块50。

其中,定位模块48,用于根据差异结果表中记录的主键标识定位到核对规则配置表中的一条核对规则;还原模块50,用于根据定位到的这条核对规则中的业务数据还原字段确定出现异常的业务系统,其中,业务数据还原字段记录了定位到的这条核对规则所清洗的业务数据的元数据信息。

此处需要说明的是,上述定位模块48,还原模块50对应于实施例一中的步骤S40至步骤S42,两个模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。

实施例3

本发明的实施例可以提供一种核对业务系统数据的系统,如图8所示,该系统可以包括:第一业务系统终端80,第二业务系统终端82,核对系统终端84。

其中,第一业务系统终端80,用于生成第一业务数据集。第二业务系统终端82,用于生成第二业务数据集。核对系统终端84,与第一业务系统终端和第二业务系统终端分别进行通信,用于抽取第一业务数据集和第二业务数据集,并调用核对规则配置表中的核对规则对第一业务数据集和第二业务数据集进行清洗,得到两个待核对的业务明细数据集,通过将两个待核对的业务明细数据集进行关联对比,生成差异结果,其中,差异结果用于确定出现异常的业务系统。

由上可知,在本实施例三提供的方案中,可以提供一种核对平台,该核对平台预先将多个业务系统产生的业务数据预存至业务数据库中,开发人员通过该核对平台可以统一在核对规则配置表中同时配置多条核对规则,通过调用核对规则配置表中的任意一条核对规则对业务数据库中的业务数据进行清洗,得到核对规则对应的两条业务明细数据集,并对上述两条业务明细数据集进行关联对比产生差异结果,根据差异结果确定出现异常的业务系统,实现了开发人员只需要配置核对规则就可以完成多个业务系统中业务数据的核对,解决了现有技术采用了为每个业务系统单独部署核对逻辑的方案,导致业务系统之间的数据核对效率低的问题。

在一种可选的实施例中,上述核对系统终端84抽取第一业务数据集和第二业务数据集,并调用核对规则配置表中的核对规则对第一业务数据集和第二业务数据集进行清洗,得到两个待核对的业务明细数据集,核对系统终端84可通过如下任意一个方案对两个待核对的业务明细数据集进行对比,并产生差异结果:

方案一:

将第一业务数据集和第二业务数据集分别存入预先定义的第一公共表与第二公共表,再将第一公共表与第二公共表进行左关联,得到差异结果,其中,差异结果可以包括:第一公共表中关联失败的业务明细数据及其关联的主键标识。

具体的,可以采用核对系统终端84中的数据比对功能模块来对上述第一公共表和第二公共表中的业务数据进行左关联对比,在本方案中,具体的关联过程可以为:首先将第一公共表和第二公共表中的所有字段作为关联键,将两张公共表中的空字段处理成恒等的特殊默认值,然后进行关联对比,并将第一公共表关联不上第二公共表的业务数据和上述第一业务数据集关联的主键标识作为差异结果。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,账务系统经过 筛选产生第一业务数据集,交易系统经过筛选产生第二业务数据集,将第一业务数据集和第二业务数据集分别同上述第一核对规则中保存的主键标识进行关联后存入表A和表B,然后将表A和表B中的字段进行左关联,将表A关联失败的业务明细数据以及表A关联的第一核对规则中的主键标识作为差异结果R1,需要说明的是,上述差异结果R1用于表征账务系统相对于交易系统中的数据差异。

方案二:

将第二公共表与第一公共表进行左关联,得到差异结果,其中,差异结果可以包括:第二公共表中关联失败的业务明细数据及其关联的主键标识。

具体的,可以采用核对系统终端84中的数据比对功能模块来对上述第二公共表和第一公共表中的业务数据进行左关联对比,在本方案中,具体的关联过程可以为:首先将第二公共表和第一公共表中的所有字段作为关联键,将两张公共表中的空字段处理成恒等的特殊默认值,然后进行关联对比,并将第二公共表关联不上第一公共表的业务数据和上述第二业务数据集关联的主键标识作为差异结果。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,账务系统经过筛选产生第一业务数据集,交易系统经过筛选产生第二业务数据集,将第一业务数据集和第二业务数据集分别同上述第一核对规则中保存的主键标识进行关联后存入表A和表B,然后将表B和表A中的字段进行左关联,将表B关联失败的业务明细数据以及表B关联的第一核对规则中的主键标识作为差异结果R2,需要说明的是,上述差异结果R2用于表征交易系统相对于账务系统中的数据差异。

方案三:将第一公共表与第二公共表进行左关联,并将第二公共表与第一公共表进行左关联,得到差异结果,其中,差异结果可以包括:第一公共表中关联失败的业务明细数据及其关联的主键标识,以及第二公共表中关联失败的业务明细数据及其关联的主键标识。

具体的,可以采用核对系统终端84中的数据比对功能模块来对上述第一公共表和第二公共表中的业务数据进行左关联对比,再对上述第二公共表和第一公共表中的业务数据进行左关联对比。在本方案中,具体的关联过程可以为:首先将第一公共表和第二公共表中的所有字段作为关联键,将两张公共表中的空字段处理成恒等的特殊默认值,然后进行关联对比,并将第一公共表关联不上第二公共表的业务数据和上述第一业务数据集关联的主键标识作为差异结果R1,将第二公共表关联不上第一公共表的业务数据和上述第一业务数据集关联的主键标识作为差异结果R2。

例如,仍旧以对服务平台中的账务系统和交易系统进行核对为例,账务系统经过 筛选产生第一业务数据集,交易系统经过筛选产生第二业务数据集,将第一业务数据集和第二业务数据集分别同上述第一核对规则中保存的主键标识进行关联后存入表A和表B,然后将表A和表B中的字段进行左关联,将表A关联失败的业务明细数据以及表A关联的第一核对规则中的主键标识作为差异结果R1,将表B关联失败的业务明细数据以及表B关联的第一核对规则中的主键标识作为差异结果R2,其中,上述差异结果R1用于表征账务系统相对于交易系统中的数据差异,上述差异结果R2用于表征交易系统相对于账务系统中的数据差异。

实施例4

本发明的实施例可以提供一种核对系统终端,如图9所示,该核对系统终端84可以包括:存储器841,核对处理器842。

其中,存储器841,用于存储业务数据库,业务数据库用于保存获取到的至少两个业务系统的业务数据。核对处理器842,用于根据核对规则配置表中的至少一条核对规则对存储器中的两个业务系统的业务数据进行清洗,并将清洗得到的两个待核对的业务明细数据集进行关联对比,生成差异结果,其中,差异结果用于确定出现异常的业务系统。

由上可知,在本实施例四提供的方案中,可以提供一种核对平台,该核对平台预先将多个业务系统产生的业务数据预存至业务数据库中,开发人员通过该核对平台可以统一在核对规则配置表中同时配置多条核对规则,通过调用核对规则配置表中的任意一条核对规则对业务数据库中的业务数据进行清洗,得到核对规则对应的两条业务明细数据集,并对上述两条业务明细数据集进行关联对比产生差异结果,根据差异结果确定出现异常的业务系统,实现了开发人员只需要配置核对规则就可以完成多个业务系统中业务数据的核对,解决了现有技术采用了为每个业务系统单独部署核对逻辑的方案,导致业务系统之间的数据核对效率低的问题。

实施例5

本发明的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。

可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。

可选地,图10是根据本发明实施例的一种计算机终端的结构框图。如图10所示,该计算机终端A可以包括:一个或多个(图中仅示出一个)处理器51、存储器53、以及传输装置55。

其中,存储器53可用于存储软件程序以及模块,如本发明实施例中的安全漏洞检测方法和装置对应的程序指令/模块,处理器51通过运行存储在存储器53内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的系统漏洞攻击的检测方法。存储器53可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器53可进一步包括相对于处理器51远程设置的存储器,这些远程存储器可以通过网络连接至终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

上述的传输装置55用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置55包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置55为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。

其中,具体地,存储器53用于存储预设动作条件和预设权限用户的信息、以及应用程序。

处理器51可以通过传输装置调用存储器53存储的信息及应用程序,以执行下述步骤:将获取到的至少两个业务系统的业务数据保存至业务数据库;调用核对规则配置表中的至少一条核对规则;使用任意一条核对规则对业务数据库中的两个业务系统的业务数据进行清洗,得到任意一条核对规则对应的两个待核对的业务明细数据集;将任意一条核对规则对应的两个待核对的业务明细数据集进行关联对比,生成差异结果,其中,生成的差异结果用于确定出现异常的业务系统。

可选的,上述处理器51还可以执行如下步骤的程序代码:核对规则至少包括如下数据字段:主键标识、业务数据清洗字段和业务数据还原字段。

可选的,上述处理器51还可以执行如下步骤的程序代码:使用任意一条核对规则对业务数据库中的两个业务系统的业务数据进行清洗,得到任意一条核对规则对应的两个待核对的业务明细数据集,包括:根据任意一条核对规则所包含的业务数据清洗字段确定业务数据库中待核对的两个业务系统;根据业务数据清洗字段中的通用数据名称对待核对的两个业务系统的业务数据分别进行筛选,生成任意一条核对规则对应 的两个待核对的业务明细数据集。

可选的,上述处理器51还可以执行如下步骤的程序代码:任意一条核对规则对应的两个待核对的业务明细数据集包括:第一业务明细数据集和第二业务明细数据集,其中,在生成任意一条核对规则对应的两个待核对的业务明细数据集之后,方法还包括:将任意一条核对规则中包含的主键标识和第一业务明细数据集关联之后插入第一公共表,并将任意一条核对规则中包含的主键标识字段和第二业务明细数据集关联之后插入第二公共表。

可选的,上述处理器51还可以执行如下步骤的程序代码:将任意一条核对规则对应的两个待核对的业务明细数据集进行关联对比,生成差异结果的步骤包括:将第一公共表与第二公共表进行左关联,差异结果包括:第一公共表中关联失败的业务明细数据及其关联的主键标识;其中,在生成差异结果之后,方法还包括:将差异结果保存至差异结果表中。

可选的,上述处理器51还可以执行如下步骤的程序代码:将任意一条核对规则对应的两个待核对的业务明细数据集进行关联对比,生成差异结果的步骤包括:将第二公共表与第一公共表进行左关联,生成的差异结果包括:第二公共表中关联失败的业务明细数据及其关联的主键标识;其中,在生成差异结果之后,方法还包括:将差异结果保存至差异结果表中。

可选的,上述处理器51还可以执行如下步骤的程序代码:将任意一条核对规则对应的两个待核对的业务明细数据集进行关联对比,生成差异结果的步骤包括:将第一公共表与第二公共表进行左关联,并将第二公共表与第一公共表进行左关联,生成的差异结果包括:第一公共表中关联失败的业务明细数据及其关联的主键标识,以及第二公共表中关联失败的业务明细数据及其关联的主键标识;其中,在生成差异结果之后,方法还包括:将差异结果保存至差异结果表中,其中,生成的差异结果表包括:用于保存第一公共表中关联失败的业务明细数据及其关联的主键标识的第一差异结果表,以及,用于保存第二公共表中关联失败的业务明细数据及其关联的主键标识的第二差异结果表。

可选的,上述处理器51还可以执行如下步骤的程序代码:在将差异结果保存至差异结果表之后,方法还包括:根据差异结果表中记录的主键标识定位到核对规则配置表中的一条核对规则;根据定位到的这条核对规则中的业务数据还原字段确定出现异常的业务系统,其中,业务数据还原字段记录了定位到的这条核对规则所清洗的业务数据的元数据信息。

可选的,上述处理器51还可以执行如下步骤的程序代码:主键标识包括:用于表征业务系统的业务类型标识和/或业务操作类型标识。

由上可知,在本实施例五提供的方案中,可以提供一种核对平台,该核对平台预先将多个业务系统产生的业务数据预存至业务数据库中,开发人员通过该核对平台可以统一在核对规则配置表中同时配置多条核对规则,通过调用核对规则配置表中的任意一条核对规则对业务数据库中的业务数据进行清洗,得到核对规则对应的两条业务明细数据集,并对上述两条业务明细数据集进行关联对比产生差异结果,根据差异结果确定出现异常的业务系统,实现了开发人员只需要配置核对规则就可以完成多个业务系统中业务数据的核对,解决了现有技术采用了为每个业务系统单独部署核对逻辑的方案,导致业务系统之间的数据核对效率低的问题。

本领域普通技术人员可以理解,图10所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。图10其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图10中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图10所示不同的配置。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。

实施例6

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的核对业务系统数据的方法所执行的程序代码。

可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:将获取到的至少两个业务系统的业务数据保存至业务数据库;调用核对规则配置表中的至少一条核对规则;使用任意一条核对规则对业务数据库中的两个业务系统的业务数据进行清洗,得到任意一条核对规则对应的两个待核对的业务明细数据集;将任意一条核对规则对应的两个待核对的业务明细数据集进行关联对比,生成差异结果,其中,差异结果用于确定出现异常的业务系统。

此处需要说明的是,上述计算机终端群中的任意一个可以与网站服务器和扫描器 建立通信关系,扫描器可以扫描计算机终端上php执行的web应用程序的值命令。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1