JP6711884B2 - ソースデータベースの負荷を最小化したデータ整合性検証方法およびシステム - Google Patents
ソースデータベースの負荷を最小化したデータ整合性検証方法およびシステム Download PDFInfo
- Publication number
- JP6711884B2 JP6711884B2 JP2018206576A JP2018206576A JP6711884B2 JP 6711884 B2 JP6711884 B2 JP 6711884B2 JP 2018206576 A JP2018206576 A JP 2018206576A JP 2018206576 A JP2018206576 A JP 2018206576A JP 6711884 B2 JP6711884 B2 JP 6711884B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- module
- consistency
- source database
- database
- 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
Links
- 238000000034 method Methods 0.000 title claims description 24
- 238000013496 data integrity verification Methods 0.000 title claims description 10
- 230000008859 change Effects 0.000 claims description 72
- 238000011084 recovery Methods 0.000 claims description 25
- 238000012795 verification Methods 0.000 claims description 19
- 239000000284 extract Substances 0.000 claims description 14
- 238000013075 data extraction Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 7
- 238000007726 management method Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 9
- 238000013508 migration Methods 0.000 description 5
- 230000005012 migration Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000010076 replication Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
-
- 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/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0709—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2082—Data synchronisation
-
- 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/23—Updating
- G06F16/2358—Change logging, detection, and notification
-
- 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/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/80—Database-specific techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/82—Solving problems relating to consistency
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Description
20:第1運営サーバー
22:ソースデータベース
24:DBMSトランザクションログ
30:第2運営サーバー
32:ターゲットデータベース
100:整合性検証サーバー
102:リポジトリ
110:変化データ抽出モジュール
120:パターン分析器モジュール
130:ルールエンジンモジュール
140 : 整合性実行モジュール
150:ダンプモジュール
160:比較モジュール
170:リカバリーモジュール
Claims (3)
- クライアントとソースデータベースを運営する運営サーバーとの間のパケットからSQL変更データを抽出するか、トランザクションログ又はトリガー情報からSQL変更データを抽出する変更データ抽出手段と、
前記変更データ抽出手段によって抽出したSQL変更データを受信し、分析対象のテーブルに属し、データ操作言語(DML)に属している場合、テーブルオブジェクトナンバー、データ発生時間、DMLタイプ、変更されたコラムのビット単位の表現、日付、またはシーケンス番号で構成されるバイナリデータ形式のDML変更パターンビットセットデータを生成するパターン分析器と、
分析対象のテーブルの過去のパターン分析統計を取得し、前記DML変更パターンビットセットデータを分析して新しい統計情報を生成した後、生成された統計情報と過去の統計情報に基づいて、日単位で値が最も頻繁に変更されるカラム情報を抽出して、日付またはシーケンスの範囲に合わせてグループ単位でデータを抽出することができる条件節の整合性プロファイルを生成するルールエンジンモジュールと、
ソースデータベースの負荷を測定して負荷が最小となった時点で、前記ルールエンジンモジュールの整合性プロファイルを実行する整合性実行モジュールと、
前記整合性実行モジュールの制御に基づいて、 ソースデータベースとターゲットデータベースからグループ単位で対象のテーブルのデータを読み込み、該当行(ROW)のコラムのチェックサム値を生成するダンプモジュールと、
前記整合性実行モジュールの制御に基づいて、ソースデータベースのチェックサム値とターゲットデータベースのチェックサム値とを比較し、一致しない場合、データ復旧信号を生成する比較モジュールと、
前記整合性実行モジュールの制御と、前記比較モジュールの復旧信号に応じて、ソースデータベースからの復旧テーブルの行(ROW)についてロック(LOCK)した後、ソースデータベースから抽出した行(ROW)データをターゲットデータベースにコピーして、ソースデータベースとターゲットデータベースを同期させるリカバリーモジュールと、
を含む、ソースデータベースの負荷を最小化したデータ整合性検証システム。 - 前記変更データ抽出手段は、
ネットワーク環境のスイッチまたはタップ設備からパケットデータをコピーしてSQL変更データを抽出するスニッフィングモジュール、ネットワークパケットを中継しつつSQL変更データを抽出するプロキシモジュール、第1運営サーバーのDBMSで復旧のために生成したトランザクションログを持ち込んでSQL変更データを抽出するトランザクションログモジュール、変更データ履歴情報を残すことができるトリガー機能でSQL変更データを抽出するモジュール、のうちいずれか一つであることを特徴とする、請求項1に記載のソースデータベースの負荷を最小化したデータ整合性検証システム。 - クライアントと接続され、ソースデータベースを運営する第1運用サーバーと、ターゲットデータベースを運営する第2運用サーバーと、により構成されるデータベースシステムにおいて、整合性検証サーバーによって、前記ソースデータベースとターゲットデータベースの整合性を検証するためのデータ整合性検証方法において、
前記整合性検証サーバーがクライアントとソースデータベースを運営する運営サーバーとの間のパケットからSQL変更データを抽出するか、トランザクションログ又はトリガー情報からSQL変更データを抽出する第1段階と、
前記整合性検証サーバーが前記第1段階で抽出したSQL変更データを受信し、分析対象のテーブルに属し、データ操作言語(DML)に属している場合、テーブルオブジェクトナンバー、データ発生時間、DMLタイプ、変更されたコラムのビット単位の表現、日付、またはシーケンス番号で構成されるバイナリデータ形式のDML変更パターンビットセットデータを生成する第2段階と、
前記整合性検証サーバーが分析対象のテーブルの過去のパターン分析統計を取得し、前記DML変更パターンビットセットデータを分析して新しい統計情報を生成した後、生成された統計情報と過去の統計情報に基づいて、日単位で値が最も頻繁に変更されるカラム情報を抽出して、日付またはシーケンスの範囲に合わせてグループ単位でデータを抽出することができる条件節の整合性プロファイルを生成する第3段階と、
前記整合性検証サーバーがソースデータベースの負荷を測定して負荷が最小となった時点で、前記整合性プロファイルに従ってソースデータベースとターゲットデータベースから対象のテーブルのデータを読み込み、該当行(ROW)のコラムのチェックサム値を求める第4段階と、
前記整合性検証サーバーが、ソースデータベースのチェックサム値とターゲットデータベースのチェックサム値とを比較し、一致しない場合、データ復旧信号を生成する第5段階と、
前記整合性検証サーバーが前記復旧信号に応じて、ソースデータベースからの復旧テーブルの行(ROW)についてロック(LOCK)した後、ソースデータベースから抽出した行(ROW)データをターゲットデータベースにコピーして、ソースデータベースとターゲットデータベースを同期させる第6段階と、
を含む、ソースデータベースの負荷を最小化したデータ整合性検証方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180062876A KR101917807B1 (ko) | 2018-05-31 | 2018-05-31 | 원본 데이터베이스의 부하를 최소화한 데이터 정합성 검증 방법 및 시스템 |
KR10-2018-0062876 | 2018-05-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019212272A JP2019212272A (ja) | 2019-12-12 |
JP6711884B2 true JP6711884B2 (ja) | 2020-06-17 |
Family
ID=64024429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018206576A Active JP6711884B2 (ja) | 2018-05-31 | 2018-11-01 | ソースデータベースの負荷を最小化したデータ整合性検証方法およびシステム |
Country Status (4)
Country | Link |
---|---|
US (1) | US20190370368A1 (ja) |
JP (1) | JP6711884B2 (ja) |
KR (1) | KR101917807B1 (ja) |
GB (1) | GB2574282A (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102225258B1 (ko) | 2019-04-18 | 2021-03-10 | 주식회사 실크로드소프트 | 데이터베이스 시스템에서 효율적인 변경 데이터 캡쳐를 제공하기 위한 컴퓨터 프로그램 |
CN110990414B (zh) * | 2019-10-31 | 2023-06-16 | 口碑(上海)信息技术有限公司 | 一种数据处理方法以及装置 |
CN112231403B (zh) * | 2020-10-15 | 2024-01-30 | 北京人大金仓信息技术股份有限公司 | 数据同步的一致性校验方法、装置、设备和存储介质 |
CN112363873A (zh) * | 2020-11-27 | 2021-02-12 | 上海爱数信息技术股份有限公司 | 一种分布式一致性备份恢复系统及其备份方法 |
KR102463665B1 (ko) * | 2021-02-18 | 2022-11-09 | (주)알투비솔루션 | 원격 dbms 테이블간 고성능 테이블 데이터 정합성 검증 시스템 |
KR102669856B1 (ko) * | 2021-05-25 | 2024-05-29 | 손철규 | 서버간 네트워크가 단절된 망분리 환경에서의 dbms 테이블 정합성 검증 및 보정 시스템 |
KR102698018B1 (ko) * | 2021-05-25 | 2024-08-26 | (주)엑스로그 | 서버간 네트워크가 단절된 망분리 환경에서의 cdc 방식의 db 복제 시스템 |
KR102431846B1 (ko) | 2022-01-26 | 2022-08-11 | (주) 다윈아이씨티 | 플랫폼 마이그레이션에 대한 검증 방법, 장치 및 시스템 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7257689B1 (en) * | 2004-10-15 | 2007-08-14 | Veritas Operating Corporation | System and method for loosely coupled temporal storage management |
US8751441B2 (en) * | 2008-07-31 | 2014-06-10 | Sybase, Inc. | System, method, and computer program product for determining SQL replication process |
US9171029B2 (en) * | 2013-01-31 | 2015-10-27 | International Business Machines Corporation | Performing batches of selective assignments in a vector friendly manner |
-
2018
- 2018-05-31 KR KR1020180062876A patent/KR101917807B1/ko active IP Right Grant
- 2018-09-17 US US16/133,415 patent/US20190370368A1/en not_active Abandoned
- 2018-09-20 GB GB1815308.0A patent/GB2574282A/en not_active Withdrawn
- 2018-11-01 JP JP2018206576A patent/JP6711884B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
KR101917807B1 (ko) | 2018-11-13 |
JP2019212272A (ja) | 2019-12-12 |
US20190370368A1 (en) | 2019-12-05 |
GB2574282A (en) | 2019-12-04 |
GB201815308D0 (en) | 2018-11-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6711884B2 (ja) | ソースデータベースの負荷を最小化したデータ整合性検証方法およびシステム | |
JP6668442B2 (ja) | Sqlパケット分析を通じての異機種データベースのデータ複製および同期化エラー探知方法およびシステム | |
CN109033186B (zh) | 数据一致性检测方法、装置、存储介质及电子设备 | |
Pelkonen et al. | Gorilla: A fast, scalable, in-memory time series database | |
US10452625B2 (en) | Data lineage analysis | |
US7127475B2 (en) | Managing data integrity | |
AU2015206487B2 (en) | Database key identification | |
CN110134694B (zh) | 一种双活数据库中表数据的快速比对装置及方法 | |
CN109522315B (zh) | 一种数据库处理方法及系统 | |
CN113420026B (zh) | 数据库表结构变更方法、装置、设备及存储介质 | |
CN112835918A (zh) | 一种MySQL数据库增量同步实现方法 | |
CN106844694B (zh) | 用于同步数据的方法及设备 | |
CN113672692B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
US11023449B2 (en) | Method and system to search logs that contain a massive number of entries | |
KR20100134355A (ko) | 데이터베이스의 논리적 데이터 오류 복구방법 | |
CN111198847A (zh) | 一种适用于大数据集的数据并行处理方法、装置及系统 | |
CN111522875B (zh) | 一种全量数据同步的分布式系统数据副本一致性监测方法 | |
CN113672596A (zh) | 项目配置表处理方法、装置、设备及存储介质 | |
EP2980702A1 (en) | Method for enhancing the generation of a backup copy of data items of a distributed data structure, computer network for enhancing the generation of a backup copy of data items of a distributed data structure, program and computer program product | |
CN114153830B (zh) | 数据验证方法及其装置、计算机存储介质、电子设备 | |
CN113190536B (zh) | 一种对双活数据库管理复制系统的快速修复方法及装置 | |
Shaik et al. | Assimilating sense into disaster recovery databases and judgement framing proceedings for the fastest recovery | |
CN117763559A (zh) | 一种漏洞确定方法及电子设备 | |
CN117493455A (zh) | 一种Postgres表全量采集方法 | |
Lu et al. | Delta extraction in a limited collaborative environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181101 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191029 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200128 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20200512 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200528 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6711884 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |