CN111078672B - 数据库的数据对比方法及装置 - Google Patents

数据库的数据对比方法及装置 Download PDF

Info

Publication number
CN111078672B
CN111078672B CN201911322274.1A CN201911322274A CN111078672B CN 111078672 B CN111078672 B CN 111078672B CN 201911322274 A CN201911322274 A CN 201911322274A CN 111078672 B CN111078672 B CN 111078672B
Authority
CN
China
Prior art keywords
data
database
source
information table
target
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.)
Active
Application number
CN201911322274.1A
Other languages
English (en)
Other versions
CN111078672A (zh
Inventor
周春春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN201911322274.1A priority Critical patent/CN111078672B/zh
Publication of CN111078672A publication Critical patent/CN111078672A/zh
Application granted granted Critical
Publication of CN111078672B publication Critical patent/CN111078672B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明提供一种数据库的数据对比方法及装置,方法包括:通过分别获取源端数据库的数据信息表和目标端数据库的数据信息表;基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理,本发明能够有效提高数据对比的准确性,并提高数据对比的适用性。

Description

数据库的数据对比方法及装置
技术领域
本发明涉及计算机数据库处理技术领域,具体涉及一种数据库的数据对比方法及装置。
背景技术
在IT系统建设实施过程中,都不可缺少数据库系统。尤其在金融行业中,普遍采用Oracle(全称是Oracle Database,又名Oracle RDBMS,或简称Oracle)数据库,Oracle数据库是一款关系数据库管理系统。随着时间推移以及业务发展,IT系统的数据量将会急剧增加,在IT系统硬件无法继续扩容后,单一数据库部署节点存在数据访问效率降低的风险。因此需要根据不同的应用场景,考虑将部分数据通过应用或者第三方工具同步到其他节点的数据库中,降低应用访问单一数据库存在的性能风险。
由于数据同步到其他数据库时,会由于异常问题导致数据库之间出现数据不一致的现象,需要进行数据对比。数据对比的主要目的是验证同样表结构的两份数据表是否完全一致,其对比结果的准确性尤为重要,关系到数据开发的成败。
但是现有的数据对比方法需要对每个字段单独定制对比,由于对比字段繁多,增加了数据对比的复杂度,降低了适用范围导致适用性差;部分情况下,虽然比对结果相同,但是字段可能不同,会导致结果有偏差,降低了准确性。
发明内容
针对现有技术中的问题,本发明提供一种数据库的数据对比方法及装置,能够提高数据对比的准确性,并提高数据对比的适用性。
为解决上述技术问题,本发明提供以下技术方案:
第一方面,本发明提供一种数据库的数据对比方法,包括:
分别获取源端数据库的数据信息表和目标端数据库的数据信息表;
基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;
根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;
基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理。
其中,所述基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理,包括:
在所述源端特征双链表中基于所述目标端数据库的数据信息表对应的全列数据特征值进行搜索比对,若所述源端特征双链表中存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则删除所述源端特征双链表中与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据。
其中,所述基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理,还包括:
在所述源端特征双链表中基于所述目标端数据库的数据信息表对应的全列数据特征值进行搜索比对,若所述源端特征双链表中不存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中。
其中,所述基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值,包括:
将所述源端数据库和所述目标端数据库各自对应的数据信息表中的字段项均按照数据字典表中的顺序进行排序生成各自对应的全列数据字符串;
对所述源端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值,以及对所述目标端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值;
其中,所述源端数据库对应的hash值和md5值构成源端数据库中全列数据字符串对应的全列数据特征值;所述目标端数据库对应的hash值和md5值构成目标端数据库中全列数据字符串对应的全列数据特征值。
其中,所述根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表,包括:
将所述源端数据库对应的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项进行拼接得到所述源端数据库对应的特征字段字符串;
对所述源端数据库对应的特征字段字符串进行hasd运算得到该特征字段字符串对应的hash值;
所述特征字段字符串对应的hash值构成源端特征双链表的链表块号,所述源端数据库的数据信息表对应的全列数据特征值构成源端特征双链表中链表块号后的链表集合。
进一步的,在所述基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理之后,还包括:
根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本。
其中,确定所述数据比对处理的结果为:删除源端特征双链表中与目标端数据库的数据信息表对应的全列数据特征值一致的数据;则根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本,包括:
确定删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
根据所述删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,生成第一条件信息;
根据所述第一条件信息生成第一修改脚本;
其中,所述第一条件信息用于定位删除数据在源端数据库的数据信息表中的位置;所述第一修改脚本用于将所述删除数据存储至目标端数据库。
其中,确定所述数据比对处理的结果为:将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中;则所述根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本,包括:
确定待删除数据集中的待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
根据待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,生成第二条件信息;
根据所述第二条件信息生成第二修改脚本;
其中,所述第二条件信息用于定位待删除数据在目标端数据库的数据信息表中的位置;所述第二修改脚本用于将待删除数据从目标端数据库中删除。
第二方面,本发明提供一种数据库的数据对比装置,包括:
获取单元,用于分别获取源端数据库的数据信息表和目标端数据库的数据信息表;
特征单元,用于基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;
链表单元,用于根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;
比对单元,用于基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理。
其中,所述比对单元包括:
第一比对子单元,用于在所述源端特征双链表中基于所述目标端数据库的数据信息表对应的全列数据特征值进行搜索比对,若所述源端特征双链表中存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则删除所述源端特征双链表中与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据。
其中,所述比对单元还包括:
第二比对子单元,用于在所述源端特征双链表中基于所述目标端数据库的数据信息表对应的全列数据特征值进行搜索比对,若所述源端特征双链表中不存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中。
其中,所述特征单元包括:
字符串子单元,用于将所述源端数据库和所述目标端数据库各自对应的数据信息表中的字段项均按照数据字典表中的顺序进行排序生成各自对应的全列数据字符串;
运算子单元,用于对所述源端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值,以及对所述目标端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值;
其中,所述源端数据库对应的hash值和md5值构成源端数据库中全列数据字符串对应的全列数据特征值;所述目标端数据库对应的hash值和md5值构成目标端数据库中全列数据字符串对应的全列数据特征值。
其中,所述链表单元包括:
特征字段子单元,用于将所述源端数据库对应的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项进行拼接得到所述源端数据库对应的特征字段字符串;
计算子单元,用于对所述源端数据库对应的特征字段字符串进行hasd运算得到该特征字段字符串对应的hash值;
链表集合子单元,用于所述特征字段字符串对应的hash值构成源端特征双链表的链表块号,所述源端数据库的数据信息表对应的全列数据特征值构成源端特征双链表中链表块号后的链表集合。
进一步的,还包括:
脚本单元,用于根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本。
其中,确定所述数据比对处理的结果为:删除源端特征双链表中与目标端数据库的数据信息表对应的全列数据特征值一致的数据;则脚本单元包括:
第一字段项子单元,用于确定删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
第一条件子单元,用于根据所述删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,生成第一条件信息;
第一脚本子单元,用于根据所述第一条件信息生成第一修改脚本;
其中,所述第一条件信息用于定位删除数据在源端数据库的数据信息表中的位置;所述第一修改脚本用于将所述删除数据存储至目标端数据库。
其中,确定所述数据比对处理的结果为:将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中;则脚本单元包括:
第二字段项子单元,用于确定待删除数据集中的待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
第二条件子单元,用于根据待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,生成第二条件信息;
第二脚本子单元,用于根据所述第二条件信息生成第二修改脚本;
其中,所述第二条件信息用于定位待删除数据在目标端数据库的数据信息表中的位置;所述第二修改脚本用于将待删除数据从目标端数据库中删除。
第三方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的数据库的数据对比方法的步骤。
第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的数据库的数据对比方法的步骤。
由上述技术方案可知,本发明提供一种数据库的数据对比方法及装置,通过分别获取源端数据库的数据信息表和目标端数据库的数据信息表;基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理,能够提高数据对比的准确性,并提高数据对比的适用性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中的数据库的数据对比方法的第一种流程示意图。
图2为本发明实施例中的数据库的数据对比方法的第二种流程示意图。
图3为本发明实施例中的数据库的数据对比装置的第一种结构示意图。
图4为本发明实施例中的数据库的数据对比装置的第二种结构示意图。
图5为本发明实施例中的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供一种数据库的数据对比方法的实施例,参见图1,所述数据库的数据对比方法具体包含有如下内容:
S101:分别获取源端数据库的数据信息表和目标端数据库的数据信息表;
在本步骤中,通过对数据库的参数文件进行配置处理,其中,进行配置处理包括:配置比对任务待处理数据信息表列表、比对任务的并发数、比对修复脚本的生成文件路径、比对任务的起止时间、比对任务需要连接的源数据库和目标数据库的连接信息以及针对每个待处理数据信息表数据待比对的数据范围条件参数。
在本实施例中,配置比对任务待处理数据信息表列表,包括:配置源端数据库的数据信息表和配置目标端数据库的数据信息表。
通过配置源端数据库的数据信息表和配置目标端数据库的数据信息表的方式获取源端数据库的数据信息表和目标端数据库的数据信息表。
S102:基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;
在本步骤中,确定源端数据库的数据信息表和目标端数据库的数据信息表为待比对的数据信息表,根据待比对的数据信息表中的字段项拼接生成各自对应的特征字段。分别计算源端数据库的数据信息表和配置目标端数据库的数据信息中每一行数据的特征值,同时计算每一行数据中特征字段的特征值,并且记录下特征字段所对应的该行数据每一字段项的值,具体的包括:
将所述源端数据库和所述目标端数据库各自对应的数据信息表中的字段项均按照数据字典表中的顺序进行排序生成各自对应的全列数据字符串;对所述源端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值,以及对所述目标端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值;
其中,所述源端数据库对应的hash值和md5值构成源端数据库中全列数据字符串对应的全列数据特征值;所述目标端数据库对应的hash值和md5值构成目标端数据库中全列数据字符串对应的全列数据特征值。
可以理解的是,hash算法:是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。md5算法:md5消息摘要算法(英语:MD5Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。
数据字典表:Data dictionary table,Oracle通过数据字典来管理和展现数据库信息,数据字典通常储存数据库的元数据,如存储表、索引、约束以及其它数据库结构的信息。
将待比对的数据信息表中主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,逐一排列拼接出该表的特征字段字符串。
针对该待比对的数据信息表的特征字段字符串,逐行对特征字段字符串进行hash算法运算,计算得出的hash值,作为具体特征字段字符串的特征值。
可以理解的是,若对数据库的参数文件进行配置处理包括了比对任务需要连接的源数据库和目标数据库的连接信息,则通过读取参数文件中比对任务需要连接的源数据库和目标数据库的连接信息,调用源数据库和目标数据库。
进一步的,若对数据库的参数文件进行配置处理包括了待处理数据信息表数据待比对的数据范围条件参数,则可以根据待处理数据信息表数据待比对的数据范围条件参数,统计出源端数据库中该数据信息表的待比对数据条数,根据待比对数据条数,按照每个分区存放不超过32万条记录,计算得出特征计算表的分区数量。
其中,特征计算表为Oracle散列分区表,分区指的是Oracle散列分区表上的划分区域。
可以理解的是,Oracle散列分区表:Oracle中根据字段的hash值,将数据均匀分布到多个物理文件上的一种数据存储形式。
S103:根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;
在本步骤中,将所述源端数据库对应的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项进行拼接得到所述源端数据库对应的特征字段字符串;
对所述源端数据库对应的特征字段字符串进行hasd运算得到该特征字段字符串对应的hash值;
所述特征字段字符串对应的hash值构成源端特征双链表的链表块号,所述源端数据库的数据信息表对应的全列数据特征值构成源端特征双链表中链表块号后的链表集合。
可以理解的是,链表块号和链表块号后的链表集合构建形成一个双链表的结构,称之为源端特征双链表。该源端特征双链表也成为源端特征计算表的结果集。
需要说明的是,源端特征计算表的结果集,包含了特征字段字符串的特征值和全列数据字符串的特征值,初始化映射为一个hash链表,以降低目标端特征计算结果集的遍历搜索复杂度。
S104:基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理。
在本步骤中,在所述源端特征双链表中基于所述目标端数据库的数据信息表对应的全列数据特征值进行搜索比对;具体是遍历目标端数据库的数据信息表对应的全列数据特征值,在源端特征双链表进行搜索比较,若所述源端特征双链表中存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则删除所述源端特征双链表中与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据。
若所述源端特征双链表中不存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中。
基于上述数据库的数据对比方法的实施例,若对数据库的参数文件进行配置处理包括了比对任务的并发数和比对任务的起止时间,则在获取源端数据库的数据信息表和目标端数据库的数据信息表之前,创建命名管道,根据参数文件中的比对任务的并发数,向命名管道中循环写入等量(与比对任务的并发数相等的数量)的空行数据,完成初始化管道的操作,然后依次从命名管道中读取数据,每读取一个空行数据,就获取的数据信息表。
需要说明的是,命名管道:named pipe,又被称为先进先出队列(FIFO),是一种特殊的管道,存在于文件系统中。
在参数文件设定的比对任务的起止时间中,读取比对任务的并发数,同时获取对应数量(与比对任务的并发数相等的数量)的数据信息表,依次进行数据比对工作。
当完成当前处理的比对信息表任务后,且待处理数据信息表列表中还存在未处理的数据信息表,同时当前时间未超出比对任务的停止时间,将未处理的数据信息表的表名作为参数,进行针对该表的比对操作。
从上述描述可知,本发明实施例提供的数据库的数据对比方法,通过分别获取源端数据库的数据信息表和目标端数据库的数据信息表;基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理,能够提高数据对比的准确性,并提高数据对比的适用性。
在本发明的一实施例中,参见图2,所述数据库的数据对比方法的步骤S104之后还包括步骤S105,具体包含有如下内容:
S105:根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本。
在本步骤中,完成数据比对后根据数据比对处理的结果,调用数据修复脚本,映射到修复脚本所需要处理的具体行数据,同时生成对应的修复SQL语句的条件信息,根据修复SQL语句的条件信息解析出对应的删除数据或者新增数据的SQL修复脚本。
可以理解的是,若对数据库的参数文件进行配置处理包括了比对修复脚本的生成文件路径,则按照该生成文件路径生成比对修复脚本。
在本实施例中,比对修复脚本为SQL修复脚本。
在具体实施时,数据比对处理的结果为:删除源端特征双链表中与目标端数据库的数据信息表对应的全列数据特征值一致的数据;以及将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中。
当数据比对处理的结果为:删除源端特征双链表中与目标端数据库的数据信息表对应的全列数据特征值一致的数据;则根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本,包括:
确定删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
根据所述删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,对主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项进行排序生成第一条件信息;根据所述第一条件信息生成第一修改脚本;
其中,所述第一条件信息用于定位删除数据在源端数据库的数据信息表中的位置;所述第一修改脚本用于将所述删除数据存储至目标端数据库。
当数据比对处理的结果为:将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中;则所述根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本,包括:
确定待删除数据集中的待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
根据待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,对主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项进行排序生成第二条件信息;
根据所述第二条件信息生成第二修改脚本;
其中,所述第二条件信息用于定位待删除数据在目标端数据库的数据信息表中的位置;所述第二修改脚本用于将待删除数据从目标端数据库中删除。
从上述描述可知,本发明实施例提供的数据库的数据对比方法,能够针对Oracle数据库,准确、便捷地判断数据的不一致性,同时生成修复脚本,减少了人工干预的工作量,提高了比对效率。
本发明实施例提供一种能够实现所述数据库的数据对比方法中全部内容的数据库的数据对比装置的具体实施方式,参见图3,所述数据库的数据对比装置具体包括如下内容:
获取单元10,用于分别获取源端数据库的数据信息表和目标端数据库的数据信息表;
特征单元20,用于基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;
链表单元30,用于根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;
比对单元40,用于基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理。
其中,所述比对单元40包括:
第一比对子单元,用于在所述源端特征双链表中基于所述目标端数据库的数据信息表对应的全列数据特征值进行搜索比对,若所述源端特征双链表中存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则删除所述源端特征双链表中与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据。
其中,所述比对单元40还包括:
第二比对子单元,用于在所述源端特征双链表中基于所述目标端数据库的数据信息表对应的全列数据特征值进行搜索比对,若所述源端特征双链表中不存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中。
其中,所述特征单元20包括:
字符串子单元,用于将所述源端数据库和所述目标端数据库各自对应的数据信息表中的字段项均按照数据字典表中的顺序进行排序生成各自对应的全列数据字符串;
运算子单元,用于对所述源端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值,以及对所述目标端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值;
其中,所述源端数据库对应的hash值和md5值构成源端数据库中全列数据字符串对应的全列数据特征值;所述目标端数据库对应的hash值和md5值构成目标端数据库中全列数据字符串对应的全列数据特征值。
其中,所述链表单元30包括:
特征字段子单元,用于将所述源端数据库对应的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项进行拼接得到所述源端数据库对应的特征字段字符串;
计算子单元,用于对所述源端数据库对应的特征字段字符串进行hasd运算得到该特征字段字符串对应的hash值;
链表集合子单元,用于所述特征字段字符串对应的hash值构成源端特征双链表的链表块号,所述源端数据库的数据信息表对应的全列数据特征值构成源端特征双链表中链表块号后的链表集合。
在本发明的一实施例中,参见图4,所述数据库的数据对比装置实施例中,具体包含有如下内容:
脚本单元50,用于根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本。
其中,确定所述数据比对处理的结果为:删除源端特征双链表中与目标端数据库的数据信息表对应的全列数据特征值一致的数据;则脚本单元50包括:
第一字段项子单元,用于确定删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
第一条件子单元,用于根据所述删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,生成第一条件信息;
第一脚本子单元,用于根据所述第一条件信息生成第一修改脚本;
其中,所述第一条件信息用于定位删除数据在源端数据库的数据信息表中的位置;所述第一修改脚本用于将所述删除数据存储至目标端数据库。
其中,确定所述数据比对处理的结果为:将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中;则脚本单元50包括:
第二字段项子单元,用于确定待删除数据集中的待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
第二条件子单元,用于根据待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,生成第二条件信息;
第二脚本子单元,用于根据所述第二条件信息生成第二修改脚本;
其中,所述第二条件信息用于定位待删除数据在目标端数据库的数据信息表中的位置;所述第二修改脚本用于将待删除数据从目标端数据库中删除。
本发明提供的数据库的数据对比装置的实施例具体可以用于执行上述实施例中的数据库的数据对比方法的实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
从上述描述可知,本发明实施例提供的数据库的数据对比装置,通过分别获取源端数据库的数据信息表和目标端数据库的数据信息表;基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理,能够提高数据对比的准确性,并提高数据对比的适用性。
本申请提供一种用于实现所述数据库的数据对比方法中的全部或部分内容的电子设备的实施例所述电子设备具体包含有如下内容:
处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现相关设备之间的信息传输;该电子设备可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该电子设备可以参照实施例用于实现所述数据库的数据对比方法的实施例及用于实现所述数据库的数据对比装置的实施例进行实施,其内容被合并于此,重复之处不再赘述。
图5为本申请实施例的电子设备9600的系统构成的示意框图。如图5所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图5是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
一实施例中,数据库的数据对比功能可以被集成到中央处理器9100中。其中,中央处理器9100可以被配置为进行如下控制:
分别获取源端数据库的数据信息表和目标端数据库的数据信息表;
基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;
根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;
基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理。
从上述描述可知,本申请的实施例提供的电子设备,通过分别获取源端数据库的数据信息表和目标端数据库的数据信息表;基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理,能够提高数据对比的准确性,并提高数据对比的适用性。
在另一个实施方式中,数据库的数据对比装置可以与中央处理器9100分开配置,例如可以将数据库的数据对比配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现数据库的数据对比功能。
如图5所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图5中所示的所有部件;此外,电子设备9600还可以包括图5中没有示出的部件,可以参考现有技术。
如图5所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本发明的实施例还提供能够实现上述实施例中的数据库的数据对比方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的数据库的数据对比方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
分别获取源端数据库的数据信息表和目标端数据库的数据信息表;
基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;
根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;
基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理。
从上述描述可知,本发明实施例提供的计算机可读存储介质,通过分别获取源端数据库的数据信息表和目标端数据库的数据信息表;基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理,能够提高数据对比的准确性,并提高数据对比的适用性。
虽然本发明提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
本领域技术人员应明白,本说明书的实施例可提供为方法、装置(系统)或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。本发明并不局限于任何单一的方面,也不局限于任何单一的实施例,也不局限于这些方面和/或实施例的任意组合和/或置换。而且,可以单独使用本发明的每个方面和/或实施例或者与一个或更多其他方面和/或其实施例结合使用。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

Claims (14)

1.一种数据库的数据对比方法,其特征在于,包括:
分别获取源端数据库的数据信息表和目标端数据库的数据信息表;
基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;
根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;
基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理;
在所述基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理之后,还包括:
根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本;
确定所述数据比对处理的结果为:删除源端特征双链表中与目标端数据库的数据信息表对应的全列数据特征值一致的数据;则根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本,包括:
确定删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
根据所述删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,生成第一条件信息;
根据所述第一条件信息生成第一修改脚本;
其中,所述第一条件信息用于定位删除数据在源端数据库的数据信息表中的位置;所述第一修改脚本用于将所述删除数据存储至目标端数据库。
2.根据权利要求1所述的数据库的数据对比方法,其特征在于,所述基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理,包括:
在所述源端特征双链表中基于所述目标端数据库的数据信息表对应的全列数据特征值进行搜索比对,若所述源端特征双链表中存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则删除所述源端特征双链表中与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据。
3.根据权利要求1所述的数据库的数据对比方法,其特征在于,所述基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理,还包括:
在所述源端特征双链表中基于所述目标端数据库的数据信息表对应的全列数据特征值进行搜索比对,若所述源端特征双链表中不存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中。
4.根据权利要求1所述的数据库的数据对比方法,其特征在于,所述基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值,包括:
将所述源端数据库和所述目标端数据库各自对应的数据信息表中的字段项均按照数据字典表中的顺序进行排序生成各自对应的全列数据字符串;
对所述源端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值,以及对所述目标端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值;
其中,所述源端数据库对应的hash值和md5值构成源端数据库中全列数据字符串对应的全列数据特征值;所述目标端数据库对应的hash值和md5值构成目标端数据库中全列数据字符串对应的全列数据特征值。
5.根据权利要求1所述的数据库的数据对比方法,其特征在于,所述根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表,包括:
将所述源端数据库对应的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项进行拼接得到所述源端数据库对应的特征字段字符串;
对所述源端数据库对应的特征字段字符串进行hasd运算得到该特征字段字符串对应的hash值;
所述特征字段字符串对应的hash值构成源端特征双链表的链表块号,所述源端数据库的数据信息表对应的全列数据特征值构成源端特征双链表中链表块号后的链表集合。
6.根据权利要求1所述的数据库的数据对比方法,其特征在于,确定所述数据比对处理的结果为:将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中;则所述根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本,包括:
确定待删除数据集中的待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
根据待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,生成第二条件信息;
根据所述第二条件信息生成第二修改脚本;
其中,所述第二条件信息用于定位待删除数据在目标端数据库的数据信息表中的位置;所述第二修改脚本用于将待删除数据从目标端数据库中删除。
7.一种数据库的数据对比装置,其特征在于,包括:
获取单元,用于分别获取源端数据库的数据信息表和目标端数据库的数据信息表;
特征单元,用于基于所述源端数据库的数据信息表和所述目标端数据库的数据信息表分别生成各自对应的全列数据字符串以及全列数据字符串对应的全列数据特征值;
链表单元,用于根据所述源端数据库的数据信息表对应的全列数据特征值构建源端特征双链表;
比对单元,用于基于所述目标端数据库的数据信息表对应的全列数据特征值和所述源端特征双链表进行数据库的数据比对处理;
脚本单元,用于根据所述数据比对处理的结果生成用于修改目标端数据库中存储数据的修改脚本;
确定所述数据比对处理的结果为:删除源端特征双链表中与目标端数据库的数据信息表对应的全列数据特征值一致的数据;则脚本单元包括:
第一字段项子单元,用于确定删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
第一条件子单元,用于根据所述删除数据对应在所述源端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,生成第一条件信息;
第一脚本子单元,用于根据所述第一条件信息生成第一修改脚本;
其中,所述第一条件信息用于定位删除数据在源端数据库的数据信息表中的位置;所述第一修改脚本用于将所述删除数据存储至目标端数据库。
8.根据权利要求7所述的数据库的数据对比装置,其特征在于,所述比对单元包括:
第一比对子单元,用于在所述源端特征双链表中基于所述目标端数据库的数据信息表对应的全列数据特征值进行搜索比对,若所述源端特征双链表中存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则删除所述源端特征双链表中与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据。
9.根据权利要求7所述的数据库的数据对比装置,其特征在于,所述比对单元还包括:
第二比对子单元,用于在所述源端特征双链表中基于所述目标端数据库的数据信息表对应的全列数据特征值进行搜索比对,若所述源端特征双链表中不存在与所述目标端数据库的数据信息表对应的全列数据特征值一致的数据,则将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中。
10.根据权利要求7所述的数据库的数据对比装置,其特征在于,所述特征单元包括:
字符串子单元,用于将所述源端数据库和所述目标端数据库各自对应的数据信息表中的字段项均按照数据字典表中的顺序进行排序生成各自对应的全列数据字符串;
运算子单元,用于对所述源端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值,以及对所述目标端数据库对应的全列数据字符串分别进行hash运算和md5运算分别得到hash值和md5值;
其中,所述源端数据库对应的hash值和md5值构成源端数据库中全列数据字符串对应的全列数据特征值;所述目标端数据库对应的hash值和md5值构成目标端数据库中全列数据字符串对应的全列数据特征值。
11.根据权利要求7所述的数据库的数据对比装置,其特征在于,所述链表单元包括:
特征字段子单元,用于将所述源端数据库对应的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项进行拼接得到所述源端数据库对应的特征字段字符串;
计算子单元,用于对所述源端数据库对应的特征字段字符串进行hasd运算得到该特征字段字符串对应的hash值;
链表集合子单元,用于所述特征字段字符串对应的hash值构成源端特征双链表的链表块号,所述源端数据库的数据信息表对应的全列数据特征值构成源端特征双链表中链表块号后的链表集合。
12.根据权利要求7所述的数据库的数据对比装置,其特征在于,确定所述数据比对处理的结果为:将所述目标端数据库的数据信息表对应的全列数据特征值对应的数据放置在待删除数据集中;则脚本单元包括:
第二字段项子单元,用于确定待删除数据集中的待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项;
第二条件子单元,用于根据待删除数据对应在目标端数据库的数据信息表中的主键对应的字段项、唯一约束对应的字段项和唯一索引对应的字段项,生成第二条件信息;
第二脚本子单元,用于根据所述第二条件信息生成第二修改脚本;
其中,所述第二条件信息用于定位待删除数据在目标端数据库的数据信息表中的位置;所述第二修改脚本用于将待删除数据从目标端数据库中删除。
13.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至6任一项所述的数据库的数据对比方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6任一项所述的数据库的数据对比方法的步骤。
CN201911322274.1A 2019-12-20 2019-12-20 数据库的数据对比方法及装置 Active CN111078672B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911322274.1A CN111078672B (zh) 2019-12-20 2019-12-20 数据库的数据对比方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911322274.1A CN111078672B (zh) 2019-12-20 2019-12-20 数据库的数据对比方法及装置

Publications (2)

Publication Number Publication Date
CN111078672A CN111078672A (zh) 2020-04-28
CN111078672B true CN111078672B (zh) 2023-06-02

Family

ID=70316029

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911322274.1A Active CN111078672B (zh) 2019-12-20 2019-12-20 数据库的数据对比方法及装置

Country Status (1)

Country Link
CN (1) CN111078672B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112287027B (zh) * 2020-10-29 2024-04-23 成都完美天智游科技有限公司 数据库同步方法、装置、设备及存储介质
CN112381403A (zh) * 2020-11-14 2021-02-19 西安热工研究院有限公司 一种基于区块链的网络安全绩效考核数据处理方法
CN112527776A (zh) * 2020-12-18 2021-03-19 杭州数澜科技有限公司 数据稽核方法、装置及存储介质
CN112948389B (zh) * 2021-03-05 2023-07-25 上海上讯信息技术股份有限公司 基于md5的数据库表数据比对方法及设备
CN113590621B (zh) * 2021-07-26 2024-01-23 上海英方软件股份有限公司 一种数据库表比对方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102402394A (zh) * 2010-09-13 2012-04-04 腾讯科技(深圳)有限公司 一种基于哈希算法的数据存储方法及装置
CN105095367A (zh) * 2015-06-26 2015-11-25 北京奇虎科技有限公司 一种客户端数据的采集方法和装置
CN110209891A (zh) * 2019-06-19 2019-09-06 河南中原消费金融股份有限公司 一种拉链表生成方法、装置、设备及介质
CN110351397A (zh) * 2019-05-30 2019-10-18 湖北微源卓越科技有限公司 一种匹配ip网段的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102402394A (zh) * 2010-09-13 2012-04-04 腾讯科技(深圳)有限公司 一种基于哈希算法的数据存储方法及装置
CN105095367A (zh) * 2015-06-26 2015-11-25 北京奇虎科技有限公司 一种客户端数据的采集方法和装置
CN110351397A (zh) * 2019-05-30 2019-10-18 湖北微源卓越科技有限公司 一种匹配ip网段的方法及装置
CN110209891A (zh) * 2019-06-19 2019-09-06 河南中原消费金融股份有限公司 一种拉链表生成方法、装置、设备及介质

Also Published As

Publication number Publication date
CN111078672A (zh) 2020-04-28

Similar Documents

Publication Publication Date Title
CN111078672B (zh) 数据库的数据对比方法及装置
US20210357479A1 (en) Methods and apparatus for sorting data
US11327792B2 (en) Hashing data-processing steps in workflow environments
US8843502B2 (en) Sorting a dataset of incrementally received data
KR20140047916A (ko) 데이터 압축 장치 및 방법, 데이터 압축 장치를 포함하는 메모리 시스템
CN106445643B (zh) 克隆、升级虚拟机的方法及设备
US11620260B2 (en) Record property synchronization in a network computing system
US9043275B2 (en) Data synchronization using string matching
CN105447166A (zh) 一种基于关键字查找信息的方法及系统
US8868584B2 (en) Compression pattern matching
CN103368817A (zh) 电子邮件发送、接收方法及装置
US10614063B2 (en) Streaming records from parallel batched database access
US10365850B2 (en) Method of storing data, information processing apparatus and non-transitory computer-readable storage medium
JP7047110B2 (ja) コンテンツ非依存のファイルインデックス化の方法及びシステム
CN105138364A (zh) 一种终端系统升级的方法及装置
CN106326310B (zh) 一种手机客户端软件的资源加密更新方法
CN112579591B (zh) 数据校验方法、装置、电子设备及计算机可读存储介质
CN114328464A (zh) 分布式存储设备的数据维护方法、装置、设备和可读介质
CN110636042B (zh) 一种服务端已验证块高的更新方法、装置及设备
US20170116219A1 (en) Efficient differential techniques for metafiles
CN112000671A (zh) 基于区块链的数据库表处理方法、装置及系统
CN111177279A (zh) 表单保存方法、装置、存储介质及电子设备
US11379449B2 (en) Method, electronic device and computer program product for creating metadata index
US11449548B2 (en) Systems and methods for enriching documents for indexing
JP2014059867A (ja) 順序インデックス生成システム及びその方法

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220907

Address after: 25 Financial Street, Xicheng District, Beijing 100033

Applicant after: CHINA CONSTRUCTION BANK Corp.

Address before: 25 Financial Street, Xicheng District, Beijing 100033

Applicant before: CHINA CONSTRUCTION BANK Corp.

Applicant before: Jianxin Financial Science and Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant