掌桥专利:专业的专利平台
掌桥专利
首页

数据对比方法、装置及设备

文献发布时间:2024-04-18 19:58:53


数据对比方法、装置及设备

技术领域

本发明涉及计算机技术领域,尤其涉及到一种数据对比方法、装置及设备。

背景技术

当前多源异构数据库架构渐渐成为新的趋势,在多源异构数据库架构下,不同数据库产品的格式存在显著差异,甚至数据表结构也不一致,涉及多个层级,数据之间关联复杂,因此在需要数据对比的场景下如数据同步、数据迁移、新旧系统并行等,繁琐且容易出错。

目前,对于多层级、关联复杂的数据对比只能依赖于人工根据前期步骤的结果多次写后续查询语句,极大的降低了工作效率,容易出错。

发明内容

有鉴于此,本发明提供了一种数据对比方法、装置及设备,可解决多层级、关联复杂的数据对比效率低,容易出错的技术问题。

根据本发明的第一个方面,提供了一种数据对比方法,所述方法包括:

获取数据对比计划,其中,所述数据对比计划包括查询与对比至少两个数据库之间的预设纵树结构数据;

执行所述数据对比计划中每一个第一层父节点对应的一组父节点查询语句,得到一组父节点数据,其中,所述父节点查询语句包括数据库名、表名与字段名,对比同组所述父节点数据;

获取每一个第二层子节点对应的一组第二层子节点查询语句模板,将所述父节点数据作为查询参数输入同一所述数据库名对应的所述第二层子节点查询语句模板,其中,所述第二层子节点查询语句模板包括数据库名、表名、字段名与待输入查询参数,执行第二层子节点查询语句,得到一组第二层子节点数据,对比同组所述第二层子节点数据,直到执行完成所述数据对比计划,得到所述预设纵树结构数据的对比结果。

优选地,在所述获取数据对比计划之前,还包括:

接收对数据库参数的配置;

在所述获取数据对比计划之后,还包括:

从所述数据对比计划中获取所述数据库参数;

根据所述数据库参数连接待查询与待对比的数据库。

优选地,在所述获取数据对比计划之前,还包括:

接收对待查询与待对比的预设纵树结构的选定;

在所述获取数据对比计划之后,还包括:

筛选与所述预设纵树结构对应的父节点查询语句与子节点查询语句模板。

优选地,所述方法,还包括:

筛选所述对比结果中,在所述数据库中均存在但不同的第一不同字段值,获取所述第一不同字段值对应的第一字段名;

获取预先设置的字段名与差异允许规则的对应关系,将具有所述对应关系的所述第一不同字段值确定为目标第一不同字段值,判断所述目标第一不同字段值之间的差异是否满足所述目标字段名对应的所述差异允许规则,根据判断结果更新筛选所述对比结果中的第二不同字段值。

优选地,所述根据判断结果更新筛选所述对比结果中的第二不同字段值,包括:

将满足所述差异允许规则的所述第一不同字段值,转换为相同字段值;

将不满足所述差异允许规则的所述第一不同字段值与不具有所述对应关系的所述第一不同字段值,确定为所述对比结果中的第二不同字段值。

优选地,所述方法还包括:

根据所述对比结果的类别区分展示所述对比结果。

根据本发明的第二个方面,提供了一种数据对比装置,所述装置包括:

获取模块,用于获取数据对比计划,其中,所述数据对比计划包括查询与对比至少两个数据库之间的预设纵树结构数据;

父节点执行模块,用于执行所述数据对比计划中每一个第一层父节点对应的一组父节点查询语句,得到一组父节点数据,其中,所述父节点查询语句包括数据库名、表名与字段名,对比同组所述父节点数据;

子节点执行模块,用于获取每一个第二层子节点对应的一组第二层子节点查询语句模板,将所述父节点数据作为查询参数输入同一所述数据库名对应的所述第二层子节点查询语句模板,其中,所述第二层子节点查询语句模板包括数据库名、表名、字段名与待输入查询参数,执行第二层子节点查询语句,得到一组第二层子节点数据,对比同组所述第二层子节点数据,直到执行完成所述数据对比计划,得到所述预设纵树结构数据的对比结果。

优选的,还包括:筛选模块,用于筛选所述对比结果中,在所述数据库中均存在但不同的第一不同字段值,获取所述第一不同字段值对应的第一字段名;

获取预先设置的字段名与差异允许规则的对应关系,将具有所述对应关系的所述第一不同字段值确定为目标第一不同字段值,判断所述目标第一不同字段值之间的差异是否满足所述目标字段名对应的所述差异允许规则,根据判断结果更新筛选所述对比结果中的第二不同字段值。

依据本申请第三个方面,提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述数据对比方法。

依据本申请第四个方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述数据对比方法。

借由上述技术方案,本发明提供的一种数据对比方法、装置及设备,本发明可首先获取数据对比计划,其中,数据对比计划包括查询与对比至少两个数据库之间的预设纵树结构数据;然后执行数据对比计划中每一个第一层父节点对应的一组父节点查询语句,得到一组父节点数据,其中,父节点查询语句包括数据库名、表名与字段名,对比同组父节点数据;进一步获取每一个第二层子节点对应的一组第二层子节点查询语句模板,将父节点数据作为查询参数输入同一数据库名对应的第二层子节点查询语句模板,其中,第二层子节点查询语句模板包括数据库名、表名、字段名与待输入查询参数,执行第二层子节点查询语句,得到一组第二层子节点数据,对比同组第二层子节点数据,直到执行完成数据对比计划,得到预设纵树结构数据的对比结果。通过本发明的技术方案,树结构包括第一层父节点、第二层子节点、......第n层子节点,通过自动将父节点数据作为查询参数输入同一数据库名对应的第二层子节点查询语句模板,从而将第一层父节点与第二层子节点自动连接起来,同理,将整个树结构都自动连接起来,即整个数据对比计划可以自动执行完成,无需人工根据前序查询结果再写后续查询语句,提高了数据对比的效率。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

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

图1示出了本发明实施例提供的一种数据对比方法的流程示意图;

图2示出了本发明实施例提供的另一种数据对比方法的流程示意图;

图3示出了本发明实施例提供的一种数据对比装置的结构示意图;

图4示出了本发明实施例提供的另一种数据对比装置的结构示意图;

图5示出了本发明实施例提供的一种两个数据库的一纵树结构的示意图。

具体实施方式

下文将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互结合。

本实施例提供了一种数据对比方法,如图1所示,该方法包括:

101、获取数据对比计划,其中,数据对比计划包括查询与对比至少两个数据库之间的预设纵树结构数据。

需要说明的是,本实施例针对的数据库是:数据按照树结构分布,其中,树结构包括多纵与多层,纵对应着表名,每一纵的树结构都由节点组成,每个节点对应着字段名,具体的,每一纵的树结构的第一层有至少一个第一层父节点,第二层由第一层父节点分别分支为至少一个第二层子节点,第三层由可继续分支的第二层子节点继续分支,直到第n层子节点不可继续分支,从而结束。

如图5所示,两个数据库(数据库1与数据库2)各自的一纵树结构的示意图,数据库1的第一层父节点有1个,第二层由第一层父节点分别分支为三个第二层子节点,第三层分别由每个第二层子节点分别分支一个第三层子节点,第三层子节点不可再分支,结束。数据库2的第一层父节点有1个,第二层由第一层父节点分别分支为四个第二层子节点,第三层分别由每个第二层子节点分别分支一个第三层子节点,第三层子节点不可再分支,结束。

其中,数据对比计划是预先制定的。数据对比计划的目的是:对至少两个数据库之间的预设纵树结构数据执行数据查询与对比。第一层父节点对应的是父节点查询语句、第二层子节点对应的是第二层子节点查询语句模板、......第n层子节点对应的是第n层子节点查询语句模板,无论是查询语句还是查询语句模板,具体通过在其中写入数据库名、纵对应的表名以及这个节点对应的字段名,来表示数据对比计划的对象。

102、执行数据对比计划中每一个第一层父节点对应的一组父节点查询语句,得到一组父节点数据,其中,父节点查询语句包括数据库名、表名与字段名,对比同组父节点数据。

对于本实施例,若查询与对比的数据库为两个,那么一组父节点查询语句就是两个,代表着分别对两个数据库查询,若查询与对比的数据库为三个,那么一组父节点查询语句就是三个,代表着分别对三个数据库查询,以查询与对比的数据库为两个为例,第一层父节点包括至少一个,以第一层父节点为一个为例,如图5所示,这个第一层父节点对应的一组父节点查询语句为:数据库1的查询语句1:对数据库1、收入表、字段a进行查询(之所以对收入表中的字段a进行查询是因为数据库1的收入表中第一层父节点有且仅有字段a),得到字段a对应的字段值即数据库1对应的父节点数据a;数据库2的查询语句2:对数据库2、收入表、字段a进行查询(之所以对收入表中的字段a进行查询是因为数据库2的收入表中第一层父节点有且仅有字段a),得到字段a对应的字段值即数据库2对应的父节点数据a。

查询得到同组父节点数据:数据库1对应的父节点数据a与数据库2对应的父节点数据a,对比时,数据库1对应的父节点数据a与数据库2对应的父节点数据a对比,对比后判断是相同还是不同。

103、获取每一个第二层子节点对应的一组第二层子节点查询语句模板,将父节点数据作为查询参数输入同一数据库名对应的第二层子节点查询语句模板,其中,第二层子节点查询语句模板包括数据库名、表名、字段名与待输入查询参数,执行第二层子节点查询语句,得到一组第二层子节点数据,对比同组第二层子节点数据,直到执行完成数据对比计划,得到预设纵树结构数据的对比结果。

需要说明的是,第二层子节点查询语句模板是个语句结构,其带有参数位置(数据库名的位置、表名的位置、字段名的位置与待输入查询参数的位置)与部分参数值(数据库名、表名、字段名),而待输入查询参数的位置并没有参数值,待查询出父节点数据以后,将父节点数据作为查询参数输入到待输入查询参数的位置,此时,就得到了第二层子节点查询语句。

如图5所示,数据库1的第一层父节点分支的第二层子节点有3个,分别为字段b、c、d,3个第二层子节点分别对应着数据库1的第二层子节点查询语句模板1、2、3,数据库1对应的父节点数据a作为查询参数输入数据库1的第二层子节点查询语句模板1、2、3,分别得到数据库1的第二层子节点查询语句1(包括:数据库1、收入表、字段b、数据库1的父节点数据a)、2(包括:数据库1、收入表、字段c、数据库1的父节点数据a)、3(包括:数据库1、收入表、字段d、数据库1的父节点数据a),执行后,分别得到字段值即数据库1的第二层子节点数据;

同理,数据库2的第一层父节点分支的第二层子节点有4个,分别为字段b、c、d、e,4个第二层子节点分别对应着数据库2的第二层子节点查询语句模板1、2、3、4,数据库2对应的父节点数据a作为查询参数输入数据库2的第二层子节点查询语句模板1、2、3、4,分别得到数据库2的第二层子节点查询语句1(包括:数据库2、收入表、字段b、数据库2的父节点数据a)、2(包括:数据库2、收入表、字段c、数据库2的父节点数据a)、3(包括:数据库2、收入表、字段d、数据库2的父节点数据a)、4(包括:数据库2、收入表、字段e、数据库2的父节点数据a),执行后,分别得到字段值即数据库2的第二层子节点数据。

查询得到同组第二层子节点数据:数据库1对应的第二层子节点数据b、第二层子节点数据c、第二层子节点数据d与数据库2对应的第二层子节点数据b、第二层子节点数据c、第二层子节点数据d、第二层子节点数据e,对比时,数据库1对应的第二层子节点数据b与数据库2对应的第二层子节点数据b对比;数据库1对应的第二层子节点数据c与数据库2对应的第二层子节点数据c对比;数据库1对应的第二层子节点数据d与数据库2对应的第二层子节点数据d对比,以上对比后判断是相同还是不同,数据库2对应的父节点数据e在数据库1中不存在,无需对比,直接得出不同的结论。直到执行完成数据对比计划,得到预设纵树结构数据的对比结果,其中,对比结果可为在数据库1中存在,在数据库2中不存在,或者在数据库1中不存在,在数据库2中存在,或者在数据库1和2中都存在,但是数据不同,或者在数据库1和2中都存在,且数据相同。

本发明提供的一种数据对比方法、装置及设备,本发明可首先获取数据对比计划,其中,数据对比计划包括查询与对比至少两个数据库之间的预设纵树结构数据;然后执行数据对比计划中每一个第一层父节点对应的一组父节点查询语句,得到一组父节点数据,其中,父节点查询语句包括数据库名、表名与字段名,对比同组父节点数据;进一步获取每一个第二层子节点对应的一组第二层子节点查询语句模板,将父节点数据作为查询参数输入同一数据库名对应的第二层子节点查询语句模板,其中,第二层子节点查询语句模板包括数据库名、表名、字段名与待输入查询参数,执行第二层子节点查询语句,得到一组第二层子节点数据,对比同组第二层子节点数据,直到执行完成数据对比计划,得到预设纵树结构数据的对比结果。通过本发明的技术方案,树结构包括第一层父节点、第二层子节点、......第n层子节点,通过自动将父节点数据作为查询参数输入同一数据库名对应的第二层子节点查询语句模板,从而将第一层父节点与第二层子节点自动连接起来,同理,将整个树结构都自动连接起来,即整个数据对比计划可以自动执行完成,无需人工根据前序查询结果再写后续查询语句,提高了数据对比的效率。

进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例中的具体实施过程,提供了另一种数据对比方法,如图2所示,该方法包括:

201、获取数据对比计划,其中,数据对比计划包括查询与对比至少两个数据库之间的预设纵树结构数据。

对于本实施例,具体实施方式与实施例步骤101相同,在此不再赘述。

需要说明的是,在获取数据对比计划之前,接收配置与选定,优选的,通过可视化页面接收配置与选定,过程操作简单,降低了门槛,具体包括:

1、接收对数据库参数的配置,其中,数据库参数可包括地址、账号、路径等;这样就可以在获取数据对比计划之后,从数据对比计划中获取数据库参数;根据数据库参数连接待查询与待对比的数据库,这样才能对数据库执行查询与对比。2、接收对待查询与待对比的预设纵树结构的选定;这样在获取数据对比计划之后,筛选与预设纵树结构对应的父节点查询语句与子节点查询语句模板,优选的,树结构的每一纵对应的父节点查询语句与子节点查询语句模板(包括第二层子节点到第n层子节点)都可预先写入,每次通过接收对待查询与待对比的预设纵树结构的选定,从而使得用户可选择所要查询与对比的是哪一纵的树结构,提高了数据对比效率,例如接收对收入这一纵树结构的选定,就可知所要查询与对比的是收入这一纵树结构。

202、执行数据对比计划中每一个第一层父节点对应的一组父节点查询语句,得到一组父节点数据,其中,父节点查询语句包括数据库名、表名与字段名,对比同组父节点数据。

203、获取每一个第二层子节点对应的一组第二层子节点查询语句模板,将父节点数据作为查询参数输入同一数据库名对应的第二层子节点查询语句模板,其中,第二层子节点查询语句模板包括数据库名、表名、字段名与待输入查询参数,执行第二层子节点查询语句,得到一组第二层子节点数据,对比同组第二层子节点数据,直到执行完成数据对比计划,得到预设纵树结构数据的对比结果。

对于实施例步骤202与203,具体实施方式与实施例步骤102与103相同,在此不再赘述。对于实施例步骤201-203,能够解决当前多源异构数据库架构下,不同数据库产品的格式存在显著差异,甚至数据表结构也不一致时给数据对比带来的多层级、关联复杂的问题。避免了由于业务数据结构和关系的复杂性所产生的频繁人工交互,整个对比过程跟更加自动化,能够有效提升数据同步、数据迁移、系统重构、业务验证测试等工作场景的效率。

需要说明的是,在获取数据对比计划之前,接收配置还包括:接收计划执行顺序的配置,具体的,可将所有节点数据都查询完成后对比,也可将一个节点数据查询完成的同时对比,在此不做限定。查询节点数据时,可横向查询同一层的所有节点数据后查询下一层的节点数据,也可纵向查询一支的所有层后查询下一支,直到最后一层。如图5所示,一支为:一个第一层父节点、第二层子节点中的任意一个、选中的第二层子节点所分支的第三层子节点。

在获取数据对比计划之前,接收配置还包括:接收计划执行方式的配置,具体的,计划执行方式包括深度优先式与自主向导式,深度优先式:可应用于一次性批量执行完整计划的场景,如每日的例行检查;自主向导式:可应用于用户的即时查询,用户按需下钻,这样就可以在获取数据对比计划之后,根据计划执行顺序与计划执行方式执行数据对比计划。优选的,还可以在目标数据库上执行并记录查询结果。通过精细化控制对比方式,可以突出数据对比的重点。

优选的,在得到对比结果后,还可以根据对比结果的类别区分展示对比结果。需要说明的是,对比结果的类别可为类别1:在数据库1中存在,在数据库2中不存在,或者在数据库1中不存在,在数据库2中存在,类别2:在数据库1和2中都存在,但是数据不同,类别3:在数据库1和2中都存在,且数据相同这三种。优选的,由于数据对比是为了判断在数据同步、数据迁移、系统重构、业务验证测试等场景下,是否存在数据库之间的同表数据不同,所以可以隐藏对比结果中的类别3,只展示对比结果中的类别1与类别2,为了便于针对不同类别进行不同方式处理,根据对比结果的类别区分展示对比结果,作为一种实施方式,可标记不同颜色以区分类别。

204、筛选对比结果中,在数据库中均存在但不同的第一不同字段值,获取第一不同字段值对应的第一字段名。

其中,对比结果中的不同字段值指的是在数据库1中存在,在数据库2中不存在,或者在数据库1中不存在,在数据库2中存在,或者在数据库1和2中都存在,但是数据不同这三种,而对比结果中的第一不同字段值指的是在数据库1和2中都存在,但是数据不同这一种。

205、获取预先设置的字段名与差异允许规则的对应关系,将具有对应关系的第一不同字段值确定为目标第一不同字段值,判断目标第一不同字段值之间的差异是否满足目标字段名对应的差异允许规则,根据判断结果更新筛选对比结果中的第二不同字段值。

对于实施例步骤204与205,由于对一些字段名可以有一定范围的误差,因此,预先设置字段名与差异允许规则的对应关系。第一不同字段值中包括两种:具有对应关系的第一不同字段值即目标第一不同字段值与不具有对应关系的第一不同字段值,而对于目标第一不同字段值还需要继续判断之间的差异是否满足目标字段名对应的差异允许规则,判断结果包括两种:满足差异允许规则的第一不同字段值与不满足差异允许规则的第一不同字段值,具体的,根据判断结果更新筛选对比结果中的第二不同字段值,包括:将满足差异允许规则的第一不同字段值,转换为相同字段值;将不满足差异允许规则的第一不同字段值与不具有对应关系的第一不同字段值,确定为对比结果中的第二不同字段值。

综上:未经过差异允许规则筛选,对比结果中的不同字段值包括:在数据库1中存在,在数据库2中不存在,或者在数据库1中不存在,在数据库2中存在,或者在数据库1和2中都存在,但是数据不同的第一不同字段值,而经过差异允许规则筛选后,对比结果中的不同字段值包括:在数据库1中存在,在数据库2中不存在,或者在数据库1中不存在,在数据库2中存在,或者在数据库1和2中都存在,但是数据不同的第二不同字段值。

本发明提供的一种数据对比方法、装置及设备,本发明可首先获取数据对比计划,其中,数据对比计划包括查询与对比至少两个数据库之间的预设纵树结构数据;然后执行数据对比计划中每一个第一层父节点对应的一组父节点查询语句,得到一组父节点数据,其中,父节点查询语句包括数据库名、表名与字段名,对比同组父节点数据;进一步获取每一个第二层子节点对应的一组第二层子节点查询语句模板,将父节点数据作为查询参数输入同一数据库名对应的第二层子节点查询语句模板,其中,第二层子节点查询语句模板包括数据库名、表名、字段名与待输入查询参数,执行第二层子节点查询语句,得到一组第二层子节点数据,对比同组第二层子节点数据,直到执行完成数据对比计划,得到预设纵树结构数据的对比结果。通过本发明的技术方案,树结构包括第一层父节点、第二层子节点、......第n层子节点,通过自动将父节点数据作为查询参数输入同一数据库名对应的第二层子节点查询语句模板,从而将第一层父节点与第二层子节点自动连接起来,同理,将整个树结构都自动连接起来,即整个数据对比计划可以自动执行完成,无需人工根据前序查询结果再写后续查询语句,提高了数据对比的效率。

进一步的,作为图1和图2所示方法的具体实现,本发明实施例提供了一种数据对比装置,如图3所示,该装置包括:获取模块31、父节点执行模块32、子节点执行模块33;

获取模块31,用于获取数据对比计划,其中,所述数据对比计划包括查询与对比至少两个数据库之间的预设纵树结构数据;

父节点执行模块32,用于执行所述数据对比计划中每一个第一层父节点对应的一组父节点查询语句,得到一组父节点数据,其中,所述父节点查询语句包括数据库名、表名与字段名,对比同组所述父节点数据;

子节点执行模块33,用于获取每一个第二层子节点对应的一组第二层子节点查询语句模板,将所述父节点数据作为查询参数输入同一所述数据库名对应的所述第二层子节点查询语句模板,其中,所述第二层子节点查询语句模板包括数据库名、表名、字段名与待输入查询参数,执行第二层子节点查询语句,得到一组第二层子节点数据,对比同组所述第二层子节点数据,直到执行完成所述数据对比计划,得到所述预设纵树结构数据的对比结果。

在具体的应用场景中,如图4所示,一种数据对比装置,该装置还包括:配置模块34,具体可用于接收对数据库参数的配置。

相应的,如图4所示,一种数据对比装置,该装置还包括:连接模块35,具体可用于从所述数据对比计划中获取所述数据库参数;根据所述数据库参数连接待查询与待对比的数据库。

配置模块34,具体还可用于接收对待查询与待对比的预设纵树结构的选定。

相应的,连接模块35,具体还可用于筛选与所述预设纵树结构对应的父节点查询语句与子节点查询语句模板。

在具体的应用场景中,如图4所示,一种数据对比装置,该装置还包括:筛选模块36,具体可用于筛选所述对比结果中,在所述数据库中均存在但不同的第一不同字段值,获取所述第一不同字段值对应的第一字段名;获取预先设置的字段名与差异允许规则的对应关系,将具有所述对应关系的所述第一不同字段值确定为目标第一不同字段值,判断所述目标第一不同字段值之间的差异是否满足所述目标字段名对应的所述差异允许规则,根据判断结果更新筛选所述对比结果中的第二不同字段值。

相应的,为了根据判断结果更新筛选所述对比结果中的第二不同字段值,筛选模块36,具体还可用于将满足所述差异允许规则的所述第一不同字段值,转换为相同字段值;将不满足所述差异允许规则的所述第一不同字段值与不具有所述对应关系的所述第一不同字段值,确定为所述对比结果中的第二不同字段值。

在具体的应用场景中,如图4所示,一种数据对比装置,该装置还包括:展示模块37,具体可用于根据所述对比结果的类别区分展示所述对比结果。

需要说明的是,本实施例提供的一种数据对比装置所涉及各功能单元的其他相应描述,可以参考图1至图2的对应描述,在此不再赘述。

基于上述如图1至图2所示方法,相应的,本实施例还提供了一种存储介质,存储介质具体可为易失性或非易失性,其上存储有计算机程序,该程序被处理器执行时实现上述如图1至图2所示的数据对比方法。

基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景的方法。

基于上述如图1至图2所示的方法和图3、图4所示的虚拟装置实施例,为了实现上述目的,本实施例还提供了一种计算机设备,该计算机设备包括存储介质和处理器;存储介质,用于存储计算机程序;处理器,用于执行计算机程序以实现上述如图1至图2所示的数据对比方法。

可选的,该计算机设备还可以包括用户接口、网络接口、摄像头、射频(RadioFrequency,RF)电路,传感器、音频电路、WI-FI模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard)等,可选用户接口还可以包括USB接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)等。

本领域技术人员可以理解,本实施例提供的一种计算机设备结构并不构成对该实体设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。

存储介质中还可以包括操作系统、网络通信模块。操作系统是管理上述计算机设备硬件和软件资源的程序,支持信息处理程序以及其它软件和/或程序的运行。网络通信模块用于实存储介质内部各组件之间的通信,以及与信息处理实体设备中其它硬件和软件之间通信。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现。

本发明提供的一种数据对比方法、装置及设备,本发明可首先获取数据对比计划,其中,数据对比计划包括查询与对比至少两个数据库之间的预设纵树结构数据;然后执行数据对比计划中每一个第一层父节点对应的一组父节点查询语句,得到一组父节点数据,其中,父节点查询语句包括数据库名、表名与字段名,对比同组父节点数据;进一步获取每一个第二层子节点对应的一组第二层子节点查询语句模板,将父节点数据作为查询参数输入同一数据库名对应的第二层子节点查询语句模板,其中,第二层子节点查询语句模板包括数据库名、表名、字段名与待输入查询参数,执行第二层子节点查询语句,得到一组第二层子节点数据,对比同组第二层子节点数据,直到执行完成数据对比计划,得到预设纵树结构数据的对比结果。通过本发明的技术方案,树结构包括第一层父节点、第二层子节点、......第n层子节点,通过自动将父节点数据作为查询参数输入同一数据库名对应的第二层子节点查询语句模板,从而将第一层父节点与第二层子节点自动连接起来,同理,将整个树结构都自动连接起来,即整个数据对比计划可以自动执行完成,无需人工根据前序查询结果再写后续查询语句,提高了数据对比的效率。

本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。

上述本发明序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

相关技术
  • 一种数据存储的方法、数据下载的方法、装置及电子设备
  • 采集图像数据的方法、装置、图像采集设备和电子设备
  • 基于双控的存储设备数据同步方法、装置、设备及介质
  • 一种数据处理方法、装置、网络侧设备及终端设备
  • 一种数据传输方法、装置、系统、网络设备及用户设备
  • 数据查询方法及装置、数据对比方法及装置、介质及设备
  • 一种大数据的数据对比方法、装置、设备及终端
技术分类

06120116513744