CN103810247A - 基于分桶算法的灾备数据比对方法 - Google Patents
基于分桶算法的灾备数据比对方法 Download PDFInfo
- Publication number
- CN103810247A CN103810247A CN201410012167.XA CN201410012167A CN103810247A CN 103810247 A CN103810247 A CN 103810247A CN 201410012167 A CN201410012167 A CN 201410012167A CN 103810247 A CN103810247 A CN 103810247A
- Authority
- CN
- China
- Prior art keywords
- calamity
- database module
- data
- data recording
- manufacturing side
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000011084 recovery Methods 0.000 title abstract description 10
- 238000004519 manufacturing process Methods 0.000 claims abstract description 41
- 230000001186 cumulative effect Effects 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2264—Multidimensional index structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24564—Applying rules; Deductive queries
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于分桶算法的灾备数据比对方法,特别涉及一种基于分桶算法的灾备数据比对方法,本发明属于信息技术领域。一种基于分桶算法的灾备数据比对方法,包括由灾备端数据库模块、数据比对工具模块和生产端数据库模块组成的灾备数据比对系统;所述灾备数据比对方法包括以下步骤:1)获取数据;2)对数据分桶;3)对每一桶中的数据记录的hash值进行比对;4)排序后比较每条记录。本发明提供一种基于分桶算法的灾备数据比对方法,该方法在异地灾备的情况下,在保证比对结果的精确度的前提下,不仅降低传输量,而且减少了比对时间,提高了比对效率。
Description
技术领域
本发明涉及一种基于分桶算法的灾备数据比对方法,特别涉及一种基于分桶算法的灾备数据比对方法,本发明属于信息技术领域。
背景技术
随着科学技术的迅猛发展和信息技术的广泛应用,我国政府及各行业对信息系统的依赖日益增强,尤其是电力、银行、铁路、民航、证券、保险、海关、税务等行业和部门的信息系统以及电子政务系统已经成为国家的重要基础设施。重要信息系统的安全直接影响到国民经济的正常运行,直接关系到社会稳定和群众生活。为了提高应对风险,尤其是重大风险的防护能力,以及安全保障水平,各行业都在建或已建成统一的数据灾备系统。对于数据灾备系统而言,数据的一致性是确保灾备有效的基础保证。
1)现有的数据比对方法对于关系型数据表记录的比对,每次只能比对一条记录,导致比对效率低下;
2)现有的数据比对方法对于关系型数据表记录的比对,需要对每条记录的字段逐个进行比对,以确定一条记录是否一致,导致比对效率低下;
3)现有的数据比对方法对于关系型数据表记录的比对,前提是需要两端完整的数据信息,在异地灾备的场景下,短时间内超大数据量的传输,会耗费大量网络带宽并且导致传输效率低下。
发明内容
本发明提供一种基于分桶算法的的灾备数据比对方法,该方法在异地灾备的情况下,在保证比对结果的精确度的前提下,不仅降低传输量,而且减少了比对时间,提高了比对效率。
本发明的技术方案如下:
一种基于分桶算法的灾备数据比对方法,包括由灾备端数据库模块、数据比对工具模块和生产端数据库模块组成的灾备数据比对系统,所述灾备端数据库模块和生产端数据库模块与数据比对工具模块互联;所述灾备端数据库模块用于储存灾备端数据记录;所述生产端数据库模块用于储存生产端数据记录;所述数据比对工具模块用于将灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录进行比对;所述灾备数据比对方法包括以下步骤:
1)获取数据:分别将灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录的记录主键转为32位码值,并通过数据比对工具模块获取所有需要比对的记录主键中的最大值和最小值;
2)对数据分桶:数据比对工具模块先根据需要比对的数据记录总数量设定分桶数量为N桶,并配置数据比对工具模块所允许包含的每一桶的数据记录总数量的最小值,再根据步骤1)所获取的记录主键中的最大值和最小值计算出N-1个间隔主键值,以各间隔主键值为间隔,分别将灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录分为N桶;
3)对每一桶中的数据记录的hash值进行比对:数据比对工具模块通过调用ora_hash函数先算出每条数据记录的hash值;接着对桶内所有数据记录的hash值累加形成每一桶数据记录的hash值;然后将灾备端数据库模块和生产端数据库模块对应的每一桶数据的hash值进行比较,如果一致,则确定整桶数据一致,如不一致,则继续分桶;
4)排序后比较每条记录:当需要继续分桶时,在分桶到每一桶的数据记录总数量小于或者等于数据比对工具模块所允许包含的每一桶的数据记录总数量的最小值后,数据比对工具模块不再执行分桶操作,而是将数据记录按记录主键进行排序;灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录通过主键映射,对每一桶桶内的数据记录逐条比对,从而得出比对结果。
本方法对比现有的灾备数据比对方法,具有以下优点:
1)数据比对工具对于关系型数据表记录的比对,通过分桶策略,达到每次可比对多条记录(没有条数限制,可达千万条级别),极大地提高比对效率;
2)数据比对工具对于关系型数据表记录的比对,通过将关系型数据表记录转为码值,只需比较码值是否一致即可,不用逐个字段进行比对,极大地提高了比对效率;
3)数据比对工具对于关系型数据表记录的比对,通过将关系型数据表记录转为码值,在异地灾备的场景下,极大地低降低了数据传输量,所需耗费的带宽极低,从而,准确无误地实现数据的高速备份及恢复。
附图说明
图1为本发明所包括的灾备数据比对系统的系统结构图;
图2为本发明步骤1)至步骤3)的流程示意图;
图3为本发明步骤4)的流程示意图。
具体实施方式
实施例1
如图1至图3所示:
本发明的技术方案如下:
一种基于分桶算法的灾备数据比对方法,其特征在于:包括由灾备端数据库模块、数据比对工具模块和生产端数据库模块组成的灾备数据比对系统,所述灾备端数据库模块和生产端数据库模块与数据比对工具模块互联;所述灾备端数据库模块用于储存灾备端数据记录;所述生产端数据库模块用于储存生产端数据记录;所述数据比对工具模块用于将灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录进行比对;所述灾备数据比对方法包括以下步骤:
1)获取数据:分别将灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录的记录主键转为32位码值,并通过数据比对工具模块获取所有需要比对的记录主键中的最大值和最小值;
2)对数据分桶:数据比对工具模块先根据需要比对的数据记录总数量设定分桶数量为N桶,并配置数据比对工具模块所允许包含的每一桶的数据记录总数量的最小值,再根据步骤1)所获取的记录主键中的最大值和最小值计算出N-1个间隔主键值,以各间隔主键值为间隔,分别将灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录分为N桶;
3)对每一桶中的数据记录的hash值进行比对:数据比对工具模块通过调用ora_hash函数先算出每条数据记录的hash值;接着对桶内所有数据记录的hash值累加形成每一桶数据记录的hash值;然后将灾备端数据库模块和生产端数据库模块对应的每一桶数据的hash值进行比较,如果一致,则确定整桶数据一致,如不一致,则继续分桶;
4)排序后比较每条记录:当需要继续分桶时,在分桶到每一桶的数据记录总数量小于或者等于数据比对工具模块所允许包含的每一桶的数据记录总数量的最小值后,数据比对工具模块不再执行分桶操作,而是将数据记录按记录主键进行排序;灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录通过主键映射,对每一桶桶内的数据记录逐条比对,从而得出比对结果。
通过灾备端数据库与生产端数据库之间的实际数据比对,本发明所提供的数据比对方法对比现有技术的数据比对方法所得到的比对时间、传输量和比对结果的各项技术性能数据的结果如下表所示:
表1:实际数据比对结果表
从表1可明显看出,本发明所提供的数据比对方法所得到的结果均大大优于现有技术的数据比对方法所得到的结果;在保证比对结果的精确度的前提下,本发明所提供的数据比对方法不仅降低传输量,而且减少了比对时间,提高了比对效率。
上述具体实施方式只是对本发明的技术方案进行详细解释,本发明并不只仅仅局限于上述实施例,本领域技术人员应该明白,凡是依据上述原理及精神在本发明基础上的改进、替代,都应在本发明的保护范围之内。
Claims (1)
1.一种基于分桶算法的灾备数据比对方法,其特征在于:包括由灾备端数据库模块、数据比对工具模块和生产端数据库模块组成的灾备数据比对系统,所述灾备端数据库模块和生产端数据库模块与数据比对工具模块互联;所述灾备端数据库模块用于储存灾备端数据记录;所述生产端数据库模块用于储存生产端数据记录;所述数据比对工具模块用于将灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录进行比对;所述灾备数据比对方法包括以下步骤:
1)获取数据:分别将灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录的记录主键转为32位码值,并通过数据比对工具模块获取所有需要比对的记录主键中的最大值和最小值;
2)对数据分桶:数据比对工具模块先根据需要比对的数据记录总数量设定分桶数量为N桶,并配置数据比对工具模块所允许包含的每一桶的数据记录总数量的最小值,再根据步骤1)所获取的记录主键中的最大值和最小值计算出N-1个间隔主键值,以各间隔主键值为间隔,分别将灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录分为N桶;
3)对每一桶中的数据记录的hash值进行比对:数据比对工具模块通过调用ora_hash函数先算出每条数据记录的hash值;接着对桶内所有数据记录的hash值累加形成每一桶数据记录的hash值;然后将灾备端数据库模块和生产端数据库模块对应的每一桶数据的hash值进行比较,如果一致,则确定整桶数据一致,如不一致,则继续分桶;
4)排序后比较每条记录:当需要继续分桶时,在分桶到每一桶的数据记录总数量小于或者等于数据比对工具模块所允许包含的每一桶的数据记录总数量的最小值后,数据比对工具模块不再执行分桶操作,而是将数据记录按记录主键进行排序;灾备端数据库模块的灾备端数据记录和生产端数据库模块的生产端数据记录通过主键映射,对每一桶桶内的数据记录逐条比对,从而得出比对结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410012167.XA CN103810247A (zh) | 2014-01-10 | 2014-01-10 | 基于分桶算法的灾备数据比对方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410012167.XA CN103810247A (zh) | 2014-01-10 | 2014-01-10 | 基于分桶算法的灾备数据比对方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103810247A true CN103810247A (zh) | 2014-05-21 |
Family
ID=50707017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410012167.XA Pending CN103810247A (zh) | 2014-01-10 | 2014-01-10 | 基于分桶算法的灾备数据比对方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103810247A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105045918A (zh) * | 2015-08-24 | 2015-11-11 | 用友网络科技股份有限公司 | 两数据库任意表的相互对比装置和方法 |
CN106407207A (zh) * | 2015-07-29 | 2017-02-15 | 阿里巴巴集团控股有限公司 | 一种实时新增数据更新方法和装置 |
CN107145522A (zh) * | 2017-04-11 | 2017-09-08 | 南京南瑞集团公司 | 一种数据库数据内容高速比对方法 |
CN110046638A (zh) * | 2018-12-29 | 2019-07-23 | 阿里巴巴集团控股有限公司 | 多平台间数据的融合方法、装置及设备 |
CN111291002A (zh) * | 2020-03-05 | 2020-06-16 | 深圳市网心科技有限公司 | 文件对账方法、装置、计算机设备及存储介质 |
CN112445776A (zh) * | 2020-11-20 | 2021-03-05 | 北京易观智库网络科技有限公司 | 基于Presto的动态分桶方法、系统、设备及可读存储介质 |
WO2022021501A1 (zh) * | 2020-07-30 | 2022-02-03 | 山石网科通信技术股份有限公司 | 恶意文件的确定方法及装置 |
US11941023B2 (en) | 2019-06-26 | 2024-03-26 | Zte Corporation | System and method for implementing incremental data comparison |
-
2014
- 2014-01-10 CN CN201410012167.XA patent/CN103810247A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106407207A (zh) * | 2015-07-29 | 2017-02-15 | 阿里巴巴集团控股有限公司 | 一种实时新增数据更新方法和装置 |
CN106407207B (zh) * | 2015-07-29 | 2020-06-16 | 阿里巴巴集团控股有限公司 | 一种实时新增数据更新方法和装置 |
CN105045918A (zh) * | 2015-08-24 | 2015-11-11 | 用友网络科技股份有限公司 | 两数据库任意表的相互对比装置和方法 |
CN107145522A (zh) * | 2017-04-11 | 2017-09-08 | 南京南瑞集团公司 | 一种数据库数据内容高速比对方法 |
CN107145522B (zh) * | 2017-04-11 | 2019-12-31 | 南京南瑞集团公司 | 一种数据库数据内容比对方法 |
CN110046638A (zh) * | 2018-12-29 | 2019-07-23 | 阿里巴巴集团控股有限公司 | 多平台间数据的融合方法、装置及设备 |
US11941023B2 (en) | 2019-06-26 | 2024-03-26 | Zte Corporation | System and method for implementing incremental data comparison |
CN111291002A (zh) * | 2020-03-05 | 2020-06-16 | 深圳市网心科技有限公司 | 文件对账方法、装置、计算机设备及存储介质 |
WO2022021501A1 (zh) * | 2020-07-30 | 2022-02-03 | 山石网科通信技术股份有限公司 | 恶意文件的确定方法及装置 |
CN112445776A (zh) * | 2020-11-20 | 2021-03-05 | 北京易观智库网络科技有限公司 | 基于Presto的动态分桶方法、系统、设备及可读存储介质 |
CN112445776B (zh) * | 2020-11-20 | 2022-12-20 | 北京易观智库网络科技有限公司 | 基于Presto的动态分桶方法、系统、设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103810247A (zh) | 基于分桶算法的灾备数据比对方法 | |
CN111902817B (zh) | 基于共享节点和纠错编码的区块链数据存储 | |
KR102412024B1 (ko) | 인코딩된 블록체인 데이터의 인덱싱 및 복구 | |
CN105868305B (zh) | 一种支持模糊匹配的云存储数据去重复方法 | |
Monti et al. | RAIN: a bio-inspired communication and data storage infrastructure | |
CN111095218B (zh) | 基于纠错编码存储共享的区块链数据的方法、系统及装置 | |
CN110245951B (zh) | 一种基于树形结构的联盟链主从多链共识方法 | |
CN105956128B (zh) | 一种基于简单再生码的自适应编码存储容错方法 | |
CN103916483A (zh) | 一种针对编码冗余存储系统的自适应数据存储与重构方法 | |
CN111095210B (zh) | 基于纠错编码存储共享的区块链数据 | |
CN106603561B (zh) | 一种云存储中的块级加密方法及多粒度去重复方法 | |
Xin et al. | Research on cloud computing data security model based on multi-dimension | |
CN111033491B (zh) | 基于纠错编码存储共享的区块链数据 | |
CN103377100B (zh) | 一种数据备份方法、网络节点及系统 | |
CN103902476A (zh) | 一种基于非授信的网页后门检测方法及系统 | |
CN104168112A (zh) | 一种基于多模态生物特征的密钥生成方法 | |
CN104036039A (zh) | 一种数据的并行处理方法和系统 | |
CN104484337A (zh) | Xml文档的存储方法 | |
CN103838649A (zh) | 一种降低二进制编码存储系统中计算量的方法 | |
CN203164957U (zh) | 企业级数据库备份系统 | |
CN104123347A (zh) | 一种应用于boss系统的数据重删方法及系统 | |
CN105516355A (zh) | 基于喷泉码的智能电能表误差大数据安全存储装置及方法 | |
CN112765682B (zh) | 区块分布式区块链的区块数据结构、存储介质及电子设备 | |
CN109150537A (zh) | 一种基于动态Bloom Filter的文件所有权证明方法 | |
CN115221361A (zh) | 一种基于属性图模型存储和编码图数据的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140521 |