主备数据库数据一致性核查备份方法及其系统的制作方法

文档序号:6522380阅读:232来源:国知局
主备数据库数据一致性核查备份方法及其系统的制作方法
【专利摘要】一种主备数据库数据一致性核查备份方法,它包括如下步骤:①、读取主用数据库与备用数据库中数据,使用MD5信息摘要算法分别对主用数据库与备用数据库中数据进行逐条散列;②、采用快速查找算法比对主用数据库中数据的MD5散列值与备用数据库中的数据的MD5散列值,采用标记法生成比对结果LOG文件;③、依据比对结果LOG文件,获取主数据库中对应的业务数据,并将业务数据更新至比对结果LOG文件;④、依据LOG文件同步完成备份数据库增量备份和备份库备份操作LOG记录表的更新。本发明通过对主备数据库分别进行MD5散列,然后采用二分查找快速查找算法比对两套MD5散列值,加快了核查效率,提高了海量数据一致性核查备份的效率。
【专利说明】主备数据库数据一致性核查备份方法及其系统
【技术领域】
[0001]本发明涉及计算机信息【技术领域】,特别涉及一种主备数据库数据一致性核查备份的方法。
【背景技术】
[0002]随着信息化技术的广泛应用,各机构或单位都建立了多个IT系统,这些IT系统因为机构分割管冶或是不同集成厂商的原因,出于对审计的考虑,很多关键业务数据往往存在同样的数据需要在主本方和副本方各存贮一份,主本方的业务数据(即主数据库)通常是业务数据的生产方的IT系统所用,而副本方的业务数据(即备份数据库)通常是业务数据的消费方的IT系统所有,备份数据库需要定期与主数据库保持一致,以保持副本方业务数据与主本方的正确性。
[0003]现有技术中对于主备数据一致性核查备份有两种方法,方法一是将主数据库设备中所有需要备份的数据通过数据通道全部发送到备份数据设备中,备份设备将主设备发来的数据与本设备上的数据进行比较,如果发现数据不一致再进行相关处理。这种方法在主备份设备间传送和比较的是所有需要备份的数据,因此传送和核查比对需要比较长的时间。
[0004]方法二是将主备数据库设备上的数据分别进行杂凑类算法加密后,再进行一致性比较,如果发现数据不一致再进行相关处理。因为传递和比较的是经杂凑类算法加密后的摘要信息,因此能够较快的进行主备设备之间数据核查,缩短数据核查周期。
[0005]这两种方法在进行比对查找时,均未采用快速查找算法,来提升核查效率,对于数据量非常大-数亿级时,难于实现高效的核查备份;在进行一致性备份处理时,没有在备份数据库设备中形成备份数据库一致性处理的数据库操作LOG记录,不能直观的呈现备份操作,不利于数据操作的安全审计。
[0006]CN201210353715.6采用的技术方案是:客户端对文件进行MD5加密,并生成文件快照后上传服务器端进行文件全备份。这种方法的主要目的是增强文件管理的安全性;但是,数据上传服务器需要耗费大量的时间,对于数据量非常大-数亿级时,难于实现高效的核查备份。
[0007]CN200510132328.X采用的技术方案是:通过分别对主备设备的用户数据进行MD5杂凑加密后,进行比较核查处理并最终使主备设备用户数据一致的方法。但是这种方法在进行核查校验时,没有采用快速查找方法,不适用于海量数据一致性核查备份;在进行一致性处理时,没有形成直观的备份操作记录表,不利于数据安全审计。

【发明内容】

[0008]本发明的目的有三个:一是核查对比效率高;二是形成直观的备份操作记录表;三是数据库操作的安全审计,基于此,提供一种主备数据库数据一致性核查备份方法及其系统。[0009]为实现上述目的,本发明采用以下技术方案:
一种主备数据库数据一致性核查备份方法,它包括如下步骤:
①、读取主用数据库与备用数据库中数据,使用MD5信息摘要算法分别对主用数据库与备用数据库中数据进行逐条散列;
②、采用快速查找算法比对主用数据库中数据的MD5散列值与备用数据库中的数据的MD5散列值,采用标记法生成比对结果LOG文件;
③、依据比对结果LOG文件,获取主数据库中对应的业务数据,并将业务数据更新至比对结果LOG文件;
④、依据LOG文件同步完成备份数据库增量备份和备份库备份操作LOG记录表的更新。
[0010]在步骤①中,根据业务确定资源对象的业务主键,依次读取主用数据库中的每一条记录,抽取其业务主键值和整条记录的值,通过MD5信息摘要算法将业务主键值与其对应的整条记录的值转化成MD5散列值,分别存入到主用数据库业务主键值字符串数组和主用数据库整条记录值字符串数组中;
采用上述同样的数据读取方式,将MD5散列值存入备用数据库业务主键值字符串数组和备用数据库整条记录字符串数组。
[0011]在步骤②中,快速查找算法为二分查找算法,其比对过程如下:
第一步:将主用数据库中的主用数据库业务主键值字符串数组和主用数据库整条记录值字符串数组与备用数据库中的备用数据库业务主键值字符串数组和备用数据库整条记录字符串数组进行逐条比对,用于筛选出新增、修改的数据;
第二步:将备用数据库中的备用数据库业务主键值字符串数组和备用数据库整条记录字符串数组与主用数据库中的主用数据库业务主键值字符串数组和主用数据库整条记录值字符串数组进行逐条比对,用于筛选出删除的数据。
[0012]筛选新增、修改数据的步骤如下:首先将备用数据库业务主键值字符串数组和备用数据库整条记录字符串数组排序,依次使用主用数据库中每一条主用数据库业务主键值字符串数组在备用数据库业务主键值字符串数组中使用二分查找算法查找,分以下情况:
若不存在,则说明该条数据为新增数据,在LOG文件中记录主用数据库中该条据的业务主键值,并以A进行标记;
若存在,则比较主用数据库整条记录值字符串数组与备用数据库整条记录字符串数组是否相同:不相同,则说明该条数据做了更新,在LOG文件中记录主用数据库中该条据的主键值,并以M进行标记;相同,即说明该数据的MD5散列值不变,即说明该条记录无变化,无需更新。
[0013]筛选删除数据的步骤如下:首先将主用数据库业务主键值字符串数组排序,依次读取备用数据库中每一条备用数据库业务主键值字符串数组在主用数据库业务主键值字符串数组中使用二分查找算法查找,若不存在则说明该条数据已被主用数据库删除,则在LOG文件中记录该数据的业务主键值,以D进行标记。
[0014]一种主备数据库数据一致性核查备份系统,它包括:
MD5散列模块,它读取主用数据库与备用数据库中数据,使用MD5信息摘要算法分别对主用数据库与备用数据库中数据进行逐条散列;
LOG文件生成模块,它采用快速查找算法比对主用数据库中数据的MD5散列值与备用数据库中的数据的MD5散列值,采用标记法生成比对结果LOG文件;
LOG文件更新模块,它依据比对结果LOG文件,获取主数据库中对应的业务数据,并将业务数据更新至比对结果LOG文件;
备份库更新模块,依据LOG文件同步完成备份数据库增量备份和备份库备份操作LOG记录表的更新。
[0015]采用上述技术方案的本发明,通过对主备数据库分别进行MD5散列,然后采用二分查找快速查找算法比对两套MD5散列值,加快了核查效率,提高了海量数据一致性核查备份的效率;采用标记法生成比对结果,进而形成直观的备份操作LOG记录表,并最终实现备份数据库的增量备份。相比现有的技术,本发明在对比时采用快速查找算法提高核查速度;核查备份中采用标记法形成直观的操作记录,利于业务数据操作安全审计;而且,在实现时,核查时上一次生成的主用数据库中数据的MD5散列值,作为本次备用数据库中数据的MD5散列值,减少散列次数。
【专利附图】

【附图说明】
[0016]图1为读取主用数据库与备用数据库当前数据流程图。
[0017]图2为筛选新增数据、修改数据的流程图。
[0018]图3为筛选删除数据的流程图。
【具体实施方式】
[0019]一种主备数据库数据一致性核查备份方法,它包括如下步骤:
①、读取主用数据库与备用数据库中数据,使用MD5信息摘要算法分别对主用数据库与备用数据库中数据进行逐条散列。
[0020]如图1所示,根据业务确定资源对象的业务主键,依次读取主用数据库中的每一条记录,抽取其业务主键值和整条记录的值,通过MD5信息摘要算法将业务主键值与其对应的整条记录的值转化成MD5散列值,分别存入到主用数据库业务主键值字符串数组TSl和主用数据库整条记录值字符串数组TS2中;
采用上述同样的数据读取方式,将MD5散列值存入备用数据库业务主键值字符串数组YSl和备用数据库整条记录字符串数组YS2。由于备份操作往往是周期性的,系统可以将上一次生成的主用数据库中数据的MD5散列值保存,作为本次备用数据库中数据的MD5散列值。
[0021]②、采用快速查找算法比对主用数据库中数据的MD5散列值与备用数据库中的数据的MD5散列值,采用标记法生成比对结果LOG文件。其中,快速查找算法为二分查找算法,其比对过程如下:
第一步:将主用数据库中的主用数据库业务主键值字符串数组TSl和主用数据库整条记录值字符串数组TS2与备用数据库中的备用数据库业务主键值字符串数组YSl和备用数据库整条记录字符串数组YS2进行逐条比对,用于筛选出新增、修改的数据;
第二步:将备用数据库中的备用数据库业务主键值字符串数组YSl和备用数据库整条记录字符串数组YS2与主用数据库中的主用数据库业务主键值字符串数组TSl和主用数据库整条记录值字符串数组TS2进行逐条比对,用于筛选出删除的数据。[0022]如图2所示,筛选新增、修改数据的步骤如下:首先将备用数据库业务主键值字符串数组YSl和备用数据库整条记录字符串数组YS2排序,依次使用主用数据库中每一条主用数据库业务主键值字符串数组TSl在备用数据库业务主键值字符串数组YSl中使用二分查找算法查找,分以下情况:
若不存在,则说明该条数据为新增数据,在LOG文件中记录主用数据库中该条据的业务主键值,并以A进行标记;
若存在,则比较主用数据库整条记录值字符串数组TS2与备用数据库整条记录字符串数组YS2是否相同:不相同,则说明该条数据做了更新,在LOG文件中记录主用数据库中该条据的主键值,并以M进行标记;相同,即说明该数据的MD5散列值不变,即说明该条记录无变化,无需更新。
[0023]如图3所示,筛选删除数据的步骤如下:首先将主用数据库业务主键值字符串数组TSl排序,依次读取备用数据库中每一条备用数据库业务主键值字符串数组YSl在主用数据库业务主键值字符串数组TSI中使用二分查找算法查找,若不存在则说明该条数据已被主用数据库删除,则在LOG文件中记录该数据的业务主键值,以D进行标记。
[0024]③、依据比对结果LOG文件,获取主数据库中对应的业务数据,并将业务数据更新至比对结果LOG文件。其具体步骤分为以下三步:首先,将比对结果LOG文件中标识位为‘I’和‘U’的记录对应的业务主键发给主设备;其次,主设备依据发来的业务主键获取实际业务数据,并发送给备份设备;再次,备份设备收到发来的业务数据,将业务数据按主键值更新至比对结果LOG文件中。
[0025]④、依据LOG文件同步完成备份数据库增量备份和备份库备份操作LOG记录表的更新。
[0026]i)、逐条读取比对结果LOG文件,批量完成备份库的数据增量备份,如下:
LOG文件中标识码为‘I’,则在备份数据库相对应的表中插入该条记录;
LOG文件中标识码为‘D’,则在备份数据库相对应的表中删除该条记录;
LOG文件中标识码为‘U’,则在备份数据库相对应的表中先删除当前数据库该条记录,再把LOG文件中与该条记录的业务主键值相等的记录插入到数据库中;ii)、逐条读取比对结果LOG文件,批量完成备份操作LOG记录表追加。
[0027]备份操作LOG记录表的表结构为对应的业务数据表结构+更新日期,比对结果中标记的数据更新方式与LOG记录表中的标记对应如下:
LOG文件中‘A’对应备份操作LOG记录表中‘I’ (insert新增的数据);
LOG文件中‘M’对应备份操作LOG记录表中‘U’ (update更新的数据);
LOG文件中‘D’对应备份操作LOG记录表中(delete删除的数据)。
[0028]一种主备数据库数据一致性核查备份系统,它包括:
MD5散列模块,它读取主用数据库与备用数据库中数据,使用MD5信息摘要算法分别对主用数据库与备用数据库中数据进行逐条散列;
LOG文件生成模块,它采用快速查找算法比对主用数据库中数据的MD5散列值与备用数据库中的数据的MD5散列值,采用标记法生成比对结果LOG文件;
LOG文件更新模块,它依据比对结果LOG文件,获取主数据库中对应的业务数据,并将业务数据更新至比对结果LOG文件; 备份库更新模块,依据LOG文件同步完成备份数据库增量备份和备份库备份操作LOG记录表的更新。
【权利要求】
1.一种主备数据库数据一致性核查备份方法,其特征在于,它包括如下步骤: ①、读取主用数据库与备用数据库中数据,使用MD5信息摘要算法分别对主用数据库与备用数据库中数据进行逐条散列; ②、采用快速查找算法比对主用数据库中数据的MD5散列值与备用数据库中的数据的MD5散列值,采用标记法生成比对结果LOG文件; ③、依据比对结果LOG文件,获取主数据库中对应的业务数据,并将业务数据更新至比对结果LOG文件; ④、依据LOG文件同步完成备份数据库增量备份和备份库备份操作LOG记录表的更新。
2.根据权利要求1所述的主备数据库数据一致性核查备份方法,其特征在于:在步骤①中,根据业务确定资源对象的业务主键,依次读取主用数据库中的每一条记录,抽取其业务主键值和整条记录的值,通过MD5信息摘要算法将业务主键值与其对应的整条记录的值转化成MD5散列值,分别存入到主用数据库业务主键值字符串数组(TSl)和主用数据库整条记录值字符串数组(TS2)中; 采用上述同样的数据读取方式,将MD5散列值存入备用数据库业务主键值字符串数组(YSl)和备用数据库整条记录字符串数组(YS2)。
3.根据权利要求2所述的主备数据库数据一致性核查备份方法,其特征在于:在步骤②中,快速查找算法为二分查找算法,其比对过程如下: 第一步:将主用数据库中的主用数据库业务主键值字符串数组(TSl)和主用数据库整条记录值字符串数组(TS2)与备用数据库中的备用数据库业务主键值字符串数组(YSl)和备用数据库整条记录字符串数组(YS2)进行逐条比对,用于筛选出新增、修改的数据; 第二步:将备用数据库中的备用数据库业务主键值字符串数组(YSl)和备用数据库整条记录字符串数组(YS2)与主用数据库中的主用数据库业务主键值字符串数组(TSl)和主用数据库整条记录值字符串数组(TS2)进行逐条比对,用于筛选出删除的数据。
4.根据权利要求3所述的主备数据库数据一致性核查备份方法,其特征在于,筛选新增、修改数据的步骤如下:首先将备用数据库业务主键值字符串数组(YSl)和备用数据库整条记录字符串数组(YS2)排序,依次使用主用数据库中每一条主用数据库业务主键值字符串数组(TSl)在备用数据库业务主键值字符串数组(YSl)中使用二分查找算法查找,分以下情况: 若不存在,则说明该条数据为新增数据,在LOG文件中记录主用数据库中该条据的业务主键值,并以A进行标记; 若存在,则比较主用数据库整条记录值字符串数组(TS2)与备用数据库整条记录字符串数组(YS2)是否相同:不相同,则说明该条数据做了更新,在LOG文件中记录主用数据库中该条据的主键值,并以M进行标记;相同,即说明该数据的MD5散列值不变,即说明该条记录无变化,无需更新。
5.根据权利要求3所述的主备数据库数据一致性核查备份方法,其特征在于,筛选删除数据的步骤如下:首先将主用数据库业务主键值字符串数组(TSl)排序,依次读取备用数据库中每一条备用数据库业务主键值字符串数组(YSl)在主用数据库业务主键值字符串数组(TSl)中使用二分查找算法查找,若不存在则说明该条数据已被主用数据库删除,则在LOG文件中记录该数据的业务主键值,以D进行标记。
6.一种主备数据库数据一致性核查备份系统,其特征在于,它包括: MD5散列模块,它读取主用数据库与备用数据库中数据,使用MD5信息摘要算法分别对主用数据库与备用数据库中数据进行逐条散列; LOG文件生成模块,它采用快速查找算法比对主用数据库中数据的MD5散列值与备用数据库中的数据的MD5散列值,采用标记法生成比对结果LOG文件; LOG文件更新模块 ,它依据比对结果LOG文件,获取主数据库中对应的业务数据,并将业务数据更新至比对结果LOG文件; 备份库更新模块,依据LOG文件同步完成备份数据库增量备份和备份库备份操作LOG记录表的更新。
【文档编号】G06F17/30GK104021132SQ201310650884
【公开日】2014年9月3日 申请日期:2013年12月8日 优先权日:2013年12月8日
【发明者】石瑞生, 段现辉, 石瑞军, 秦英, 岳修垒, 范文明 申请人:郑州正信科技发展股份有限公司, 北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1