KR102350282B1 - Apparatus and method for synchronization of multiple databases - Google Patents

Apparatus and method for synchronization of multiple databases Download PDF

Info

Publication number
KR102350282B1
KR102350282B1 KR1020200092036A KR20200092036A KR102350282B1 KR 102350282 B1 KR102350282 B1 KR 102350282B1 KR 1020200092036 A KR1020200092036 A KR 1020200092036A KR 20200092036 A KR20200092036 A KR 20200092036A KR 102350282 B1 KR102350282 B1 KR 102350282B1
Authority
KR
South Korea
Prior art keywords
data
database
comparison target
multiple databases
target data
Prior art date
Application number
KR1020200092036A
Other languages
Korean (ko)
Inventor
이유진
최보현
박정문
원민식
박상길
Original Assignee
주식회사 엘지유플러스
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 주식회사 엘지유플러스 filed Critical 주식회사 엘지유플러스
Priority to KR1020200092036A priority Critical patent/KR102350282B1/en
Application granted granted Critical
Publication of KR102350282B1 publication Critical patent/KR102350282B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2082Data synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2058Error 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 using more than 2 mirrored copies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2089Redundant storage control functionality
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

An embodiment of the present invention relates to an apparatus and method for synchronizing multiple databases, which suggests a reliable recovery method in case of a DB (replication) inconsistency during DB replication for DB synchronization or after completing the DB synchronization. The method for synchronizing multiple databases may include: (a) performing synchronization, when data is changed in at least one database (hereinafter, a first database) among multiple databases, by replicating the changed data in one or more other databases other than the first database (hereinafter, a second database); (b) displaying the changed data of the first database as specific information so that the changed data can be distinguished from the duplicate data of the second database; and (c) updating other data that is inconsistent based on the data in which the specific information is displayed, when the data corresponding to each other is inconsistent between the multiple databases.

Description

다중 데이터베이스의 동기화를 위한 장치 및 방법{Apparatus and method for synchronization of multiple databases}Apparatus and method for synchronization of multiple databases

본 발명은 다중 데이터베이스(Database: DB)의 동기화를 위한 기술에 관한 것으로, 보다 상세하게는 DB 동기화를 위한 DB 복제 시 또는 DB 동기화 완료 후 메시지 유실 등과 같은 오류로 일부 필드 값의 불일치가 발생할 수 있는데, 이러한 DB (복제) 불일치 발생 시 신뢰성 있는 복구 방안을 제시하는, 다중 데이터베이스의 동기화를 위한 장치 및 방법에 관한 것이다.The present invention relates to a technology for synchronization of multiple databases (Database: DB), and more particularly, mismatch of some field values may occur due to errors such as message loss during DB replication for DB synchronization or after DB synchronization is completed. , It relates to an apparatus and method for synchronization of multiple databases, which suggests a reliable recovery method in the event of such DB (replication) inconsistency.

일반적으로, 네트워크의 여러 국사에 설치된 장비는 동일한 데이터(data) 제공을 위해 실시간으로 데이터베이스 동기화(sync)를 수행하고 DB sync 후의 결과는 일치해야 한다. In general, equipment installed in multiple offices in the network performs database synchronization in real time to provide the same data, and the results after DB sync must match.

즉, 여러 국사에 설치된 다중 장비에 대응하는 다중 데이터베이스 중 적어도 하나의 데이터베이스에서 데이터 변경이 발생하면 다른 데이터베이스(들)도 변경 데이터를 복제하여 동기화를 수행한다.That is, when data change occurs in at least one database among multiple databases corresponding to multiple equipment installed in multiple offices, the other database(s) also replicates the changed data and performs synchronization.

그러나, DB 동기화를 위한 DB 복제 시 또는 DB 동기화 완료 후에도 메시지 유실 등과 같은 오류로 일부 필드 값의 불일치가 발생할 수 있고, 이러한 DB (복제) 불일치 발생 시에 복구를 수행해야 하는데, 이 경우 어떤 데이터베이스의 값을 기준으로 DB 값을 일치화해야 하는지 알 수 없기 때문에 신뢰성 있는 복구를 수행하기 어려운 문제가 있다.However, inconsistencies in some field values may occur due to errors such as message loss during DB replication for DB synchronization or even after DB synchronization is completed. There is a problem in that it is difficult to perform reliable recovery because it is not known whether the DB value should be matched based on the value.

공개특허공보 제10-2012-0009666호(2012.02.02.)Patent Publication No. 10-2012-0009666 (2012.02.02.)

본 발명은 전술한 종래의 문제점을 해결하기 위한 것으로, 그 목적은 DB 동기화를 위한 DB 복제 시 또는 DB 동기화 완료 후 DB (복제) 불일치 발생 시 신뢰성 있는 복구 방안을 제시하는, 다중 데이터베이스의 동기화를 위한 장치 및 방법을 제공하는 것이다.The present invention is to solve the above-mentioned problems of the prior art, the purpose of which is to provide a reliable recovery method when DB (replication) inconsistency occurs during DB replication for DB synchronization or after DB synchronization is completed, for synchronization of multiple databases To provide an apparatus and method.

전술한 목적을 달성하기 위하여 본 발명의 일 측면에 따른 다중 데이터베이스의 동기화를 위한 방법은, (a) 다중 데이터베이스 중 적어도 하나의 데이터베이스(이하, 제1 데이터베이스)에서 데이터 변경 발생 시, 상기 제1 데이터베이스 외의 하나 이상의 다른 데이터베이스(이하, 제2 데이터베이스)에서 상기 변경 데이터를 복제하여 동기화를 수행하는 단계; (b) 상기 제1 데이터베이스의 변경 데이터를 상기 제2 데이터베이스의 복제 데이터와 구분할 수 있도록 특정 정보로 표시하기 위한 단계; 및 (c) 상기 다중 데이터베이스 간의 서로 대응하는 데이터의 불일치 발생 시, 상기 특정 정보가 표시된 데이터를 기준으로 불일치하는 다른 데이터를 업데이트하기 위한 단계;를 포함할 수 있다.In order to achieve the above object, a method for synchronizing multiple databases according to an aspect of the present invention includes (a) when data change occurs in at least one database (hereinafter, first database) among multiple databases, the first database performing synchronization by replicating the change data in one or more other databases (hereinafter referred to as a second database); (b) displaying the changed data of the first database as specific information so that the changed data of the second database can be distinguished from the duplicate data of the second database; and (c) updating other data that is inconsistent based on data in which the specific information is displayed when discrepancy of data corresponding to each other between the multiple databases occurs.

상기 단계 (b)는 변경 데이터를 포함하는 투플(tuple) 단위로 상기 특정 정보를 표시할 수 있고, 상기 단계 (c)는 상기 특정 정보가 표시된 데이터가 복수 개일 경우 (타임스탬프를 참조하여) 최신 변경 데이터를 기준으로 불일치하는 다른 데이터를 업데이트할 수 있다. In step (b), the specific information may be displayed in a tuple unit including change data, and in step (c), when there are a plurality of data in which the specific information is displayed, the latest (referring to the timestamp) Based on the change data, you can update other inconsistent data.

상기 단계 (c)는, (c-1) 상기 다중 데이터베이스 중 하나(이하, 제3 데이터베이스)에서 비교 대상 데이터를 획득하기 위한 단계; (c-2) 제3 데이터베이스에서 상기 다중 데이터베이스의 다른 데이터베이스(이하, 제4 데이터베이스)로 상기 획득된 비교 대상 데이터에 대한 식별 정보를 전달하기 위한 단계; (c-3) 제4 데이터베이스에서 상기 식별 정보를 기초로 비교 대상 데이터를 조회하여 제3 데이터베이스로 전달하기 위한 단계; 및 (c-4) 상기 제4 데이터베이스로부터 획득된 비교 대상 데이터와 상기 제3 데이터베이스의 비교 대상 데이터를 취합한 전체의 비교 대상 데이터 중에서 각각의 비교 대상 데이터들 간의 상호 비교 후 불일치한 비교 대상 데이터 발견 시, 상기 특정 정보가 표시된 비교 대상 데이터를 기준으로 불일치하는 다른 비교 대상 데이터를 업데이트하여 일치시키기 하기 위한 단계;를 포함할 수 있고, 상기 비교 대상 데이터는 투플(tuple) 단위의 데이터일 수 있다.The step (c) may include: (c-1) acquiring data to be compared from one of the multiple databases (hereinafter referred to as a third database); (c-2) transmitting identification information for the obtained comparison target data from a third database to another database (hereinafter, referred to as a fourth database) of the multi-database; (c-3) querying the comparison target data from the fourth database based on the identification information and transmitting the searched data to the third database; and (c-4) finding inconsistent comparison target data after mutual comparison between each comparison target data among all comparison target data obtained by combining the comparison target data obtained from the fourth database and the comparison target data of the third database , updating and matching other inconsistent comparison target data based on the comparison target data in which the specific information is displayed, and the comparison target data may be data in tuple units.

전술한 목적을 달성하기 위하여 본 발명의 다른 측면에 따른 다중 데이터베이스의 동기화를 위한 장치는, 다중 데이터베이스 중 적어도 하나의 데이터베이스(이하, 제1 데이터베이스)에서 데이터 변경 발생 시, 상기 제1 데이터베이스 외의 하나 이상의 다른 데이터베이스(이하, 제2 데이터베이스)에서 상기 변경 데이터를 복제하여 동기화를 수행하기 위한 동기화부; 상기 제1 데이터베이스의 변경 데이터를 상기 제2 데이터베이스의 복제 데이터와 구분할 수 있도록 특정 정보로 표시하기 위한 표식부; 및 상기 다중 데이터베이스 간의 서로 대응하는 데이터의 불일치 발생 시, 상기 특정 정보가 표시된 데이터를 기준으로 불일치하는 다른 데이터를 업데이트하기 위한 업데이트부;를 포함할 수 있고, 상기 표식부는 변경 데이터를 포함하는 투플(tuple) 단위로 상기 특정 정보를 표시할 수 있다.In order to achieve the above object, an apparatus for synchronizing multiple databases according to another aspect of the present invention provides, when data change occurs in at least one database (hereinafter, a first database) among multiple databases, one or more other than the first database a synchronization unit for performing synchronization by replicating the changed data in another database (hereinafter, a second database); a marker for displaying the changed data of the first database as specific information to distinguish it from the duplicate data of the second database; and an update unit for updating other data inconsistent based on the data in which the specific information is displayed when the data inconsistency between the multiple databases occurs, wherein the marker unit includes a tuple ( The specific information may be displayed in units of tuple).

상기 업데이트부는 상기 특정 정보가 표시된 데이터가 복수 개일 경우 (타임스탬프를 참조하여) 최신 변경 데이터를 기준으로 불일치하는 다른 데이터를 업데이트할 수 있고, 상기 다중 데이터베이스 중 하나(이하, 제3 데이터베이스)에서 비교 대상 데이터를 획득하기 위한 데이터획득부; 제3 데이터베이스에서 상기 다중 데이터베이스의 다른 데이터베이스(이하, 제4 데이터베이스)로 상기 획득된 비교 대상 데이터에 대한 식별 정보를 전달하기 위한 정보전달부; 제4 데이터베이스에서 상기 식별 정보를 기초로 해당 비교 대상 데이터를 조회하여 제3 데이터베이스로 전달하기 위한 데이터전달부; 및 상기 제4 데이터베이스로부터 획득된 비교 대상 데이터와 상기 제3 데이터베이스의 비교 대상 데이터를 취합한 전체의 비교 대상 데이터 중에서 각각의 비교 대상 데이터들 간의 상호 비교 후 불일치한 비교 대상 데이터 발견 시, 상기 특정 정보가 표시된 비교 대상 데이터를 기준으로 불일치하는 다른 비교 대상 데이터를 업데이트하여 일치시키기 위한 일치화부;를 포함할 수 있으며, 상기 비교 대상 데이터는 투플(tuple) 단위의 데이터를 포함할 수 있다.When there are a plurality of pieces of data in which the specific information is displayed, the update unit may update other data that is inconsistent based on the latest changed data (with reference to the timestamp), and compare it in one of the multiple databases (hereinafter, the third database) a data acquisition unit for acquiring target data; an information transfer unit configured to transmit identification information on the obtained comparison target data from a third database to another database (hereinafter, referred to as a fourth database) of the multi-database; a data transfer unit for inquiring the corresponding comparison target data from the fourth database based on the identification information and transmitting the searched data to the third database; and when the comparison target data obtained from the fourth database and the comparison target data obtained from the third database are compared with each other and inconsistent comparison target data is found among all comparison target data obtained by aggregating the comparison target data of the third database, the specific information may include a matching unit configured to update and match other comparison target data that do not match based on the displayed comparison target data, and the comparison target data may include data in tuple units.

전술한 목적을 달성하기 위하여 본 발명의 또 다른 측면에 따르면 상기 다중 데이터베이스의 동기화를 위한 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공할 수 있다.According to another aspect of the present invention to achieve the above object, it is possible to provide a computer-readable recording medium in which a program for executing the method for synchronizing the multiple databases is recorded in a computer.

전술한 목적을 달성하기 위하여 본 발명의 또 다른 측면에 따르면 상기 다중 데이터베이스의 동기화를 위한 방법을 하드웨어와 결합하여 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록 매체에 저장된 애플리케이션을 제공할 수 있다.According to another aspect of the present invention in order to achieve the above object, it is possible to provide an application stored in a computer-readable recording medium in order to execute the method for synchronizing the multiple databases in combination with hardware.

전술한 목적을 달성하기 위하여 본 발명의 또 다른 측면에 따르면 상기 다중 데이터베이스의 동기화를 위한 방법을 컴퓨터에서 실행시키기 위하여 컴퓨터에서 읽을 수 있는 기록 매체에 저장된 컴퓨터 프로그램을 제공할 수 있다.In order to achieve the above object, according to another aspect of the present invention, it is possible to provide a computer program stored in a computer-readable recording medium in order to execute the method for synchronizing the multiple databases in a computer.

이상에서 설명한 바와 같이 본 발명의 다양한 측면에 따르면, 다중 데이터베이스 간의 DB 불일치 발생 시 기준이 될 수 있는 마스터(master) DB를 판단할 수 있게 하여, DB sync 후에 DB가 불일치하더라도 옳은 값으로 수정할 수 있도록 하고, 이에 따라 DB 데이터의 신뢰성을 높일 수 있는 효과가 있다.As described above, according to various aspects of the present invention, it is possible to determine the master DB, which can be a standard when a DB inconsistency between multiple databases occurs, so that even if the DB is inconsistent after DB sync, it can be corrected to the correct value. In this way, there is an effect of increasing the reliability of the DB data.

도 1은 본 발명의 예시적인 실시예에 따른 다중 데이터베이스의 동기화를 위한 시스템의 구성도,
도 2는 본 발명의 예시적인 실시예에 따른 다중 데이터베이스의 동기화를 위한 장치의 구성도,
도 3은 도 2의 업데이트부의 세부 구성도,
도 4는 본 발명의 예시적인 실시예에 따른 다중 데이터베이스의 동기화를 위한 방법의 흐름도,
도 5는 본 발명의 예시적인 실시예에 따른 오딧(audit) 과정을 설명하기 위한 도면이다.
1 is a block diagram of a system for synchronization of multiple databases according to an exemplary embodiment of the present invention;
2 is a block diagram of an apparatus for synchronization of multiple databases according to an exemplary embodiment of the present invention;
3 is a detailed configuration diagram of the update unit of FIG. 2;
4 is a flowchart of a method for synchronization of multiple databases according to an exemplary embodiment of the present invention;
5 is a diagram for explaining an audit process according to an exemplary embodiment of the present invention.

이하, 첨부도면을 참조하여 본 발명의 실시예에 대해 구체적으로 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 한다. 또한, 본 발명의 실시예에 대한 설명 시 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. Hereinafter, an embodiment of the present invention will be described in detail with reference to the accompanying drawings. In adding reference numerals to the components of each drawing, the same components are to have the same reference numerals as much as possible even though they are indicated in different drawings. In addition, when it is determined that a detailed description of a known configuration or function related to the embodiment of the present invention may obscure the gist of the present invention, the detailed description thereof will be omitted.

도 1은 본 발명의 예시적인 실시예에 따른 다중 데이터베이스의 동기화를 위한 시스템의 구성도로서, 동 도면에 도시된 바와 같이, 통신망(1), 동기화서버(2), 및 데이터베이스(3)를 포함할 수 있다.1 is a block diagram of a system for synchronization of multiple databases according to an exemplary embodiment of the present invention, and as shown in the figure, it includes a communication network 1, a synchronization server 2, and a database 3 can do.

통신망(1)은 동기화서버(2) 및 데이터베이스(3) 간을 유선, 무선 및/또는 인터넷 등으로 연결하여 통신할 수 있도록 하는 단독 또는 복합의 어떤 망이어도 무방하다.The communication network 1 may be any single or complex network that enables communication by connecting the synchronization server 2 and the database 3 through wired, wireless and/or the Internet.

동기화서버(2)는 다중 데이터베이스(3) 간의 DB(Database) 동기화를 위한 DB 복제 시 또는 DB 동기화 완료 후 DB (복제) 불일치 발생 시 신뢰성 있는 복구를 위한 것으로서, 다중 데이터베이스(3) 간의 DB 불일치 발생 시 기준이 될 수 있는 마스터(master) DB를 판단할 수 있게 하여 DB sync 후에 DB가 불일치하더라도 옳은 값으로 수정할 수 있도록 하고 이에 따라 DB 데이터의 신뢰성을 높일 수 있도록 할 수 있다.Synchronization server (2) is for reliable recovery in case of DB (database) synchronization between multiple databases (3) during DB replication or when DB (replication) discrepancy occurs after DB synchronization is completed. DB discrepancy between multiple databases (3) occurs By making it possible to determine the master DB, which can be the time standard, even if the DB is inconsistent after DB sync, it can be corrected to the correct value, thereby increasing the reliability of the DB data.

데이터베이스(3)는 통신망(1)에 배치된 다중의 데이터베이스(DB1~DBn)(3)를 나타내는 것으로서, 예를 들어, 통신망의 여러 국사에 설치된 다중 장비에 대응하는 다중 데이터베이스를 포함할 수 있다.The database 3 represents the multiple databases DB1 to DBn 3 disposed in the communication network 1 , and may include, for example, multiple databases corresponding to multiple devices installed in various offices of the communication network.

다중의 데이터베이스(DB1~DBn)(3)는 통신망(1)의 여러 국사에 설치된 장비에 동일한 데이터(data)를 제공해야 하므로, 동기화서버(2)는 다중 데이터베이스(DB1~DBn)(3) 간의 실시간으로 데이터베이스 동기화(DB sync)를 수행하고 DB sync 후의 결과가 불일치할 경우 일치시키도록 업데이트 할 수 있다.Multiple databases (DB1 to DBn) (3) have to provide the same data to the equipment installed in multiple offices of the communication network (1), so the synchronization server (2) is between multiple databases (DB1 to DBn) (3). Database synchronization (DB sync) is performed in real time, and if the results after DB sync are inconsistent, it can be updated to match.

도 2는 본 발명의 예시적인 실시예에 따른 다중 데이터베이스의 동기화를 위한 장치의 구성도로서, 도 1의 동기화 서버(2)의 구성도이고, 동 도면에 도시된 바와 같이, 동기화부(21), 표식부(23), 및 업데이트부(25)를 포함할 수 있다.FIG. 2 is a block diagram of an apparatus for synchronizing multiple databases according to an exemplary embodiment of the present invention, and is a block diagram of the synchronization server 2 of FIG. 1 , and as shown in the drawing, a synchronizer 21 , a mark unit 23 , and an update unit 25 may be included.

동기화부(21)는 다중 데이터베이스(DB1~DBn)(3) 중 적어도 하나의 데이터베이스(이하, 제1 데이터베이스)에서 데이터 변경 발생 시, 제1 데이터베이스 외의 하나 이상의 다른 데이터베이스(이하, 제2 데이터베이스)에서 해당 변경 데이터를 복제하여 동기화를 수행하기 위한 것으로서, 예를 들어 도 5를 참조하여 일 예를 설명하면, 제1 데이터베이스 DB02에서 식별정보(ID)가 103으로 동일한 행의 투풀(tuple)을 이루는 필드 SVC1, SVC2, 및 SVC3 중 적어도 하나의 필드에서 데이터 변경이 발생하는 경우, 제1 데이터베이스 DB2 외의 하나 이상의 다른 데이터베이스로서의 제2 데이터베이스 DB01 및 DB03~DB08에서 해당 변경 데이터를 복제하여 동기화를 수행하도록 할 수 있다. When data change occurs in at least one database (hereinafter, the first database) among the multiple databases (DB1 to DBn) 3 , the synchronization unit 21 is configured in one or more other databases other than the first database (hereinafter, the second database). In order to perform synchronization by duplicating the change data, for example, when an example is described with reference to FIG. 5 , the identification information (ID) of 103 in the first database DB02 is a field forming a tuple of the same row. When data change occurs in at least one field among SVC1, SVC2, and SVC3, the second database DB01 and DB03 to DB08 as one or more other databases other than the first database DB2 replicate the change data to perform synchronization. have.

표식부(23)는 제1 데이터베이스의 변경 데이터를 제2 데이터베이스의 복제 데이터와 구분할 수 있도록 특정 정보로 표시하기 위한 것으로서, 특정 정보는 해당 변경 데이터의 필드를 포함하는 동일 행의 투플(tuple) 단위로 표시할 수 있다.The marker 23 is for displaying the changed data of the first database as specific information so as to be able to distinguish it from the duplicate data of the second database, and the specific information is a tuple unit of the same row including a field of the corresponding changed data. can be displayed as

표식부(23)는, 도 5를 참조하여 일 예를 설명하면, 제1 데이터베이스 DB02의 식별정보 103인 행의 투풀_오리진(tuple_origin) 필드에 데이터 변경을 나타내는 특정 정보로서의 L(Local)을 표시하고, 나머지 다른 데이터베이스로서의 제2 데이터베이스 DB01 및 DB03~DB08의 동일 식별정보 103인 행의 투풀_오리진(tuple_origin) 필드에 데이터 복제를 나타내는 특정 정보로서의 R(Remote)을 표시할 수 있다. When an example is described with reference to FIG. 5 , the marker 23 displays L (Local) as specific information indicating data change in the tuple_origin field of the row that is the identification information 103 of the first database DB02 and R (Remote) as specific information indicating data replication may be displayed in the tuple_origin field of the row having the same identification information 103 of the second databases DB01 and DB03 to DB08 as other databases.

업데이트부(25)는 다중 데이터베이스(DB1~DBn)(3) 간의 서로 대응하는 데이터의 불일치가 발생하면 특정 정보가 표시된 데이터를 기준으로 불일치하는 다른 데이터를 업데이트하기 위한 것으로서, 도 5를 참조하여 일 예를 설명하면, 다중 데이터베이스(DB1~DBn)(3) 각각의 투풀_오리진(tuple_origin) 필드에 표시된 특정 정보를 확인하고, 다중 데이터베이스(DB1~DBn)(3) 중 데이터 변경을 나타내는 특정 정보로서의 L이 표시된 데이터베이스 DB02의 식별정보 103인 행의 필드 SVC1, SVC2, 및 SVC3에 기재된 데이터를 기준으로 다른 데이터베이스 DB01 및 DB03~DB08 각각의 대응하는 식별정보 103인 행의 필드 SVC1, SVC2, 및 SVC3에 기재된 불일치 데이터를 업데이트하여 일치화 시킬 수 있다.The update unit 25 is for updating other data that is inconsistent based on data in which specific information is displayed when there is a discrepancy in data corresponding to each other between the multiple databases DB1 to DBn 3 . Referring to FIG. 5 , one To explain the example, check the specific information displayed in the tuple_origin field of each of the multiple databases (DB1 to DBn) (3), and as specific information indicating data change among the multiple databases (DB1 to DBn) (3) Based on the data described in fields SVC1, SVC2, and SVC3 of the row with the identification information 103 of the database DB02 in which L is indicated, in the fields SVC1, SVC2, and SVC3 of the row with the corresponding identification information 103 of the other databases DB01 and DB03 to DB08, respectively It can be matched by updating the discrepancy data described.

업데이트부(25)는 다중 데이터베이스(DB1~DBn)(3) 간의 서로 대응하는 데이터의 불일치가 발생하고 특정 정보 L이 복수 개 존재할 경우 타임스탬프를 참조하여 최신 변경 데이터를 기준으로 불일치하는 다른 데이터를 업데이트 할 수 있다.The update unit 25 refers to the timestamp when inconsistency of data corresponding to each other between the multiple databases (DB1 to DBn) 3 occurs and there is a plurality of specific information L, other data that does not match based on the latest changed data can be updated

도 3은 도 2의 업데이트부(25)의 세부 구성도로서, 동 도면에 도시된 바와 같이, 데이터획득부(251), 정보전달부(253), 데이터전달부(255), 및 일치화부(257)를 포함할 수 있다.3 is a detailed configuration diagram of the update unit 25 of FIG. 2, as shown in the figure, a data acquisition unit 251, an information transmission unit 253, a data transmission unit 255, and a matching unit ( 257) may be included.

데이터획득부(251)는 다중 데이터베이스(DB1~DBn)(3) 중 하나(이하, 제3 데이터베이스)에서 비교 대상 데이터를 획득하기 위한 것으로서, 도 5를 참조하여 일 예를 설명하면, 다중 데이터베이스(DB1~DBn)(3) 중 하나인 제3 데이터베이스를 데이터베이스 DB01로 가정하면 데이터베이스 DB01의 식별정보 103인 행(또는 투풀)의 모든 필드의 데이터를 비교 대상 데이터로 획득할 수 있다.The data acquisition unit 251 is for acquiring comparison target data from one of the multiple databases (DB1 to DBn) (3) (hereinafter, the third database). Assuming that the third database, which is one of DB1 to DBn)(3), is the database DB01, data of all fields of the row (or tuple) having the identification information 103 of the database DB01 can be obtained as comparison target data.

정보전달부(253)는 제3 데이터베이스에서 다중 데이터베이스(DB1~DBn)(3)의 다른 데이터베이스(이하, 제4 데이터베이스)로 데이터획득부(251)에서 획득된 비교 대상 데이터에 대한 식별 정보를 전달하기 위한 것으로서, 도 5를 참조하여 일 예를 설명하면, 제3 데이터베이스로서의 데이터베이스 DB01에서 비교 대상 데이터로 획득된 행(투플)의 식별정보(ID) 103을 제4 데이터베이스로서의 데이터베이스 DB02~DB08로 전달할 수 있다.The information transfer unit 253 transfers the identification information for the comparison target data obtained in the data acquisition unit 251 from the third database to another database (hereinafter, the fourth database) of the multiple databases (DB1 to DBn) 3 . 5, the identification information (ID) 103 of the row (tuple) obtained as comparison target data from the database DB01 as the third database is transferred to the databases DB02 to DB08 as the fourth database. can

데이터전달부(255)는 제4 데이터베이스에서 제3 데이터베이스로부터 받은 식별 정보를 기초로 해당 비교 대상 데이터를 조회하여 제3 데이터베이스로 전달하기 위한 것으로서, 도 5를 참조하여 일 예를 설명하면, 제4 데이터베이스로서의 데이터베이스 DB02~DB08 각각에서 제3 데이터베이스로서의 데이터베이스 DB01로부터 받은 식별 정보 103과 동일한 행(투플)의 모든 데이터를 해당 비교 대상 데이터로 조회하여 제3 데이터베이스로서의 데이터베이스 DB01로 전달할 수 있으며, 그 결과 도 5에 도시된 바와 같은 다중 데이터베이스(DB1~DBn)(3)로서의 데이터베이스 DB01~DB08 간의 서로 대응하는 행(투플) 데이터의 일치화 여부를 모니터링하기 위한 오딧(audit) 테이블이 마련될 수 있다. The data transfer unit 255 inquires the corresponding comparison target data based on the identification information received from the third database in the fourth database and transmits it to the third database. In each of the databases DB02 to DB08 as databases, all data in the same row (tuple) as the identification information 103 received from the database DB01 as the third database can be searched as the corresponding comparison target data and delivered to the database DB01 as the third database, and the result is As shown in FIG. 5 , an audit table for monitoring whether or not matching of row (tuple) data corresponding to each other between databases DB01 to DB08 as multiple databases (DB1 to DBn) 3 may be provided.

일치화부(257)는 제3 데이터베이스 및 제4 데이터베이스의 모든 비교 대상 데이터들 간을 상호 비교한 후 불일치한 비교대상데이터가 발견되면 특정 정보가 표시된 비교 대상 데이터를 기준으로 불일치하는 다른 비교 대상 데이터를 업데이트하여 일치시키기 위한 것으로서, 예를 들면, 제3 데이터베이스로서의 데이터베이스 DB01에서 오딧(audit) 시 도 5의 오딧(audit) 테이블에서와 같이 데이터베이스 DB03, DB04, DB05의 일부 필드인 SVC1, SVC2, SVC3의 데이터 값이 다른 데이터베이스의 해당 데이터 값과 불일치하는 것을 확인할 수 있고, 이와 같이 불일치가 확인되면 다중 데이터베이스 DB01~DB08 각각의 투풀_오리진(tuple_origin) 필드에 표시된 특정 정보를 확인하고, 다중 데이터베이스 DB01~DB08 중 데이터 변경을 나타내는 특정 정보로서의 L이 표시된 데이터베이스 DB02의 식별정보 103인 행의 필드 SVC1, SVC2, 및 SVC3에 기재된 데이터를 기준으로 데이터베이스 DB03, DB04, DB05의 대응 필드인 SVC1, SVC2, SVC3에 기재된 불일치 데이터를 업데이트하여 일치화 시킬 수 있다.The matching unit 257 compares all of the comparison target data of the third database and the fourth database and, when inconsistent comparison target data is found, compares other comparison target data that is inconsistent based on the comparison target data in which specific information is displayed In order to match by updating, for example, when an audit is attempted in database DB01 as a third database, some fields of SVC1, SVC2, SVC3 of databases DB03, DB04, and DB05 as in the audit table of FIG. It can be seen that the data value does not match the corresponding data value of the other database. When the discrepancy is confirmed in this way, the specific information displayed in the tuple_origin field of each of the multiple databases DB01~DB08 is checked, and the data value of the multiple databases DB01~DB08 is checked. Based on the data described in the fields SVC1, SVC2, and SVC3 of the row that is the identification information 103 of the database DB02 in which L as specific information indicating data change is indicated, the corresponding fields SVC1, SVC2, and SVC3 of the databases DB03, DB04, and DB05 are described The discrepancy data can be updated to match.

일치화부(257)는 도 5와 같은 오딧(audit) 테이블의 투풀_오리진(tuple_origin) 필드에 특정 정보 L이 기재된 데이터베이스를 기준이 되는 마스터 노드로 판단하되, L이 기재된 데이터베이스가 여러 개일 경우에는 타임스템프(timestamp)를 참조하여 가장 최신 내용을 마스터로 노드로 판단하여 해당 마스터 노드의 데이터를 기준으로 불일치하는 다른 데이터를 업데이트 할 수 있다.The coincidence unit 257 determines the database in which specific information L is written in the tuple_origin field of the audit table as shown in FIG. 5 as a reference master node, but when there are multiple databases in which L is written, the time By referring to the timestamp, it is possible to update other data that is inconsistent based on the data of the corresponding master node by determining that the most recent content is the master and the node.

일치화부(257)는 도 5의 오딧(audit) 테이블에서와 같이 데이터베이스 DB01의 오딧(audit) 결과 리포트에서 데이터베이스 DB03, DB04, DB05에서 수행할 SQL(일치화 시키기 위한 업데이트)문을 출력하여 일치화를 수행하고, 일치화 결과를 MMI(Man Machine Interface)를 통해 운영자에게 알릴 수 있다.As in the audit table of FIG. 5 , the matching unit 257 outputs the SQL (update for matching) statements to be executed in the databases DB03, DB04, and DB05 in the audit result report of the database DB01 to match them. , and the result of matching can be notified to the operator through MMI (Man Machine Interface).

본 실시예에서 변경 데이터, 복제 데이터, 또는 비교 대상 데이터는 행의 투플(tuple) 단위의 데이터를 일 예로 설명하였지만, 이에 한정되지 않고 필드 단위를 포함하는 다양한 단위의 데이터를 포함할 수 있다. In the present embodiment, the change data, duplicate data, or comparison target data has been described as an example of data in a tuple unit of a row, but is not limited thereto and may include data in various units including field units.

도 4는 본 발명의 예시적인 실시예에 따른 다중 데이터베이스의 동기화를 위한 방법의 흐름도, 도 1-3의 동기화 서버(2) 장치에 적용되므로 해당 장치의 동작과 병행하여 설명한다.4 is a flowchart of a method for synchronization of multiple databases according to an exemplary embodiment of the present invention, which is applied to the synchronization server 2 device of FIGS. 1-3 and will be described in parallel with the operation of the device.

먼저, 다중 데이터베이스(DB1~DBn)(3) 중 적어도 하나의 데이터베이스로서의 제1 데이터베이스에서 데이터의 변경이 발생하면(S401), 동기화부(21)는 다중 데이터베이스(DB1~DBn)(3) 중 제1 데이터베이스 외의 다른 데이터베이스로서의 제2 데이터베이스에서 제1 데이터베이스의 해당 변경 데이터를 복제하여 동기화를 수행한다(S403).First, when data change occurs in the first database as at least one database among the multiple databases (DB1 to DBn) (3) (S401), the synchronization unit 21 is the first of the multiple databases (DB1 to DBn) (3). Synchronization is performed by replicating the corresponding changed data of the first database in the second database as a database other than the first database (S403).

이어, 표식부(23)는 제1 데이터베이스의 변경 데이터를 제2 데이터베이스의 복제 데이터와 구분할 수 있도록 제1 데이터베이스의 변경 데이터에 특정 정보를 표시하는데, 예를 들어, 도 5에 도시된 바와 같이 데이터베이스 DB2에서 시간 2019-11-17 18:12:25000056에 식별 정보 103 행 투풀 중 적어도 하나의 필드 데이터에 변경이 발생한 경우 제1 데이터베이스로서의 DB02의 식별정보 103인 행의 투풀_오리진(tuple_origin) 필드에 데이터 변경을 나타내는 특정 정보로서의 L(Local)을 표시하고, 나머지 다른 데이터베이스로서의 제2 데이터베이스 DB01 및 DB03~DB08의 동일 식별정보 103인 행의 투풀_오리진(tuple_origin) 필드에 데이터 복제를 나타내는 특정 정보로서의 R(Remote)을 표시할 수 있다(S405). Next, the marker 23 displays specific information on the changed data of the first database so that the changed data of the first database can be distinguished from the duplicate data of the second database, for example, as shown in FIG. In DB2 at the time 2019-11-17 18:12:25000056, when a change occurs in the data of at least one field among the identification information 103 row tuple, in the tuple_origin field of the row identification 103 of DB02 as the first database L (Local) as specific information indicating data change is displayed, and as specific information indicating data replication in the tuple_origin field of the row with the same identification information 103 of the second databases DB01 and DB03 to DB08 as other databases R (Remote) may be displayed (S405).

이어, 업데이트부(25)는 다중 데이터베이스(DB1~DBn)(3) 간의 서로 대응하는 데이터에 불일치가 발생하는 지의 여부를 모니터링하는데(S407), 예를 들어, 도 5에 도시된 바와 같은 다중 데이터베이스(DB1~DBn)(3)로서의 데이터베이스 DB01~DB08 간의 서로 대응하는 행(투플) 데이터의 일치화 여부를 모니터링하기 위한 오딧(audit) 테이블을 구성하고, 해당 오딧 테이블을 통하여 다중 데이터베이스 DB01~DB08 간의 서로 대응하는 데이터의 불일치 여부를 확인한다(S409).Next, the update unit 25 monitors whether a discrepancy occurs in data corresponding to each other between the multiple databases DB1 to DBn 3 ( S407 ), for example, the multiple databases as shown in FIG. 5 . An audit table is configured to monitor whether the row (tuple) data corresponding to each other between databases DB01 to DB08 as (DB1 to DBn)(3) is matched, and through the corresponding audit table, the It is checked whether the data corresponding to each other do not match (S409).

마지막으로, 업데이트부(25)는 단계 S409에서 도 5의 오딧(audit) 테이블에서와 같이 데이터베이스 DB03, DB04, DB05의 일부 필드인 SVC1, SVC2, SVC3의 데이터 값이 다른 데이터베이스의 해당 데이터 값과 불일치한 것이 확인되면, 다중 데이터베이스 DB01~DB08 각각의 투풀_오리진(tuple_origin) 필드에 표시된 특정 정보를 확인하고, 다중 데이터베이스 DB01~DB08 중 데이터 변경을 나타내는 특정 정보로서의 L이 표시된 데이터베이스 DB02의 식별정보 103인 행의 필드 SVC1, SVC2, 및 SVC3에 기재된 데이터를 기준으로 데이터베이스 DB03, DB04, DB05의 대응 필드인 SVC1, SVC2, SVC3에 기재된 불일치 데이터를 업데이트하여 일치화시킨다(S411).Finally, in step S409, as in the audit table of FIG. 5, the update unit 25 determines that the data values of SVC1, SVC2, and SVC3, which are some fields of the databases DB03, DB04, and DB05, are inconsistent with the corresponding data values of other databases. If one is confirmed, the specific information displayed in the tuple_origin field of each of the multiple databases DB01 to DB08 is checked, and L as specific information indicating data change among the multiple databases DB01 to DB08 is identified as 103 of the database DB02 Based on the data described in the fields SVC1, SVC2, and SVC3 of the row, the inconsistent data described in the corresponding fields SVC1, SVC2, and SVC3 of the databases DB03, DB04, and DB05 are updated to match (S411).

단계 S411에서 업데이트부(25)는 도 5의 오딧(audit) 테이블의 투풀_오리진(tuple_origin) 필드에 특정 정보 L이 기재된 데이터베이스가 여러 개일 경우에는 특정 정보 L이 표시된 복수의 데이터베이스의 데이터 중 타임스템프(timestamp) 필드에 기록된 시간이 가장 최신인 데이터를 기준으로 불일치하는 다른 데이터를 업데이트하여 일치시키도록 한다.In step S411, when there are multiple databases in which the specific information L is written in the tuple_origin field of the audit table of FIG. Based on the data with the most recent time recorded in the (timestamp) field, other data that does not match is updated to match.

한편, 전술한 본 발명의 실시예에 따른 다중 데이터베이스의 동기화를 위한 방법에 따르면 해당 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 구현할 수 있다.Meanwhile, according to the method for synchronization of multiple databases according to the embodiment of the present invention described above, a computer-readable recording medium in which a program for executing the method in a computer is recorded can be implemented.

다른 한편, 전술한 본 발명의 실시예에 따른 다중 데이터베이스의 동기화를 위한 방법에 따르면 해당 방법을 하드웨어와 결합하여 실행시키기 위하여 컴퓨터에서 읽을 수 있는 기록 매체에 저장된 애플리케이션을 구현할 수 있다.On the other hand, according to the method for synchronization of multiple databases according to the embodiment of the present invention described above, an application stored in a computer-readable recording medium can be implemented in order to execute the method in combination with hardware.

또 다른 한편, 전술한 본 발명의 실시예에 따른 다중 데이터베이스의 동기화를 위한 방법에 따르면 해당 방법을 컴퓨터에서 실행시키기 위하여 컴퓨터에서 읽을 수 있는 기록 매체에 저장된 컴퓨터 프로그램을 구현할 수 있다.On the other hand, according to the above-described method for synchronizing multiple databases according to an embodiment of the present invention, a computer program stored in a computer-readable recording medium can be implemented in order to execute the method in a computer.

예를 들어, 전술한 바와 같이 본 발명의 예시적인 실시예에 따른 다중 데이터베이스의 동기화를 위한 방법은 다양한 컴퓨터로 구현되는 동작을 수행하기 위한 프로그램 명령을 포함하는 컴퓨터 판독가능 기록 매체 또는 이러한 기록 매체에 저장된 애플리케이션으로 구현될 수 있다. 상기 컴퓨터 판독 가능 기록 매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 기록 매체는 본 발명의 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.For example, as described above, the method for synchronization of multiple databases according to an exemplary embodiment of the present invention is a computer-readable recording medium including program instructions for performing various computer-implemented operations or in such a recording medium. It can be implemented as a stored application. The computer-readable recording medium may include program instructions, local data files, local data structures, and the like alone or in combination. The recording medium may be specially designed and configured for the embodiment of the present invention, or may be known and used by a person skilled in the art of computer software. Examples of the computer-readable recording medium include hard disks, magnetic media such as floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floppy disks, and ROMs, RAMs, flash memories, and the like. Hardware devices specially configured to store and execute the same program instructions are included. Examples of program instructions may include high-level language codes that can be executed by a computer using an interpreter or the like as well as machine language codes such as those generated by a compiler.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical spirit of the present invention, and various modifications and variations will be possible without departing from the essential characteristics of the present invention by those skilled in the art to which the present invention pertains. Accordingly, the embodiments disclosed in the present invention are not intended to limit the technical spirit of the present invention, but to explain, and the scope of the technical spirit of the present invention is not limited by these embodiments. The protection scope of the present invention should be construed by the following claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.

1: 통신망
2: 동기화 서버
3: 다중 데이터베이스
21: 동기화부
23: 표식부
25: 업데이트부
251: 데이터획득부
253: 정보전달부
255: 데이터전달부
257: 일치화부
1: network
2: Synchronization Server
3: Multiple databases
21: synchronization unit
23: marker
25: update department
251: data acquisition unit
253: information delivery unit
255: data transfer unit
257: coincidence

Claims (13)

(a) 다중 데이터베이스 중 적어도 하나의 데이터베이스(이하, 제1 데이터베이스)에서 데이터 변경 발생 시, 상기 제1 데이터베이스 외의 하나 이상의 다른 데이터베이스(이하, 제2 데이터베이스)에서 상기 변경 데이터를 복제하여 동기화를 수행하는 단계;
(b) 상기 제1 데이터베이스의 변경 데이터를 상기 제2 데이터베이스의 복제 데이터와 구분할 수 있도록 특정 정보로 표시하기 위한 단계; 및
(c) 상기 다중 데이터베이스 간의 서로 대응하는 데이터의 불일치 발생 시, 상기 특정 정보가 표시된 데이터를 기준으로 불일치하는 다른 데이터를 업데이트하기 위한 단계;
를 포함하는 다중 데이터베이스의 동기화를 위한 방법.
(a) when data change occurs in at least one database (hereinafter, the first database) among the multiple databases, synchronization is performed by replicating the changed data in one or more other databases (hereinafter, the second database) other than the first database step;
(b) displaying the changed data of the first database as specific information so that the changed data of the second database can be distinguished from the duplicate data of the second database; and
(c) updating other data that is inconsistent based on the data in which the specific information is displayed when the data corresponding to each other is inconsistent between the multiple databases;
A method for synchronizing multiple databases, including
제1항에 있어서,
상기 단계 (b)는 변경 데이터를 포함하는 투플(tuple) 단위로 상기 특정 정보를 표시하는 것을 특징으로 하는 다중 데이터베이스의 동기화를 위한 방법.
According to claim 1,
The step (b) is a method for synchronizing multiple databases, characterized in that the specific information is displayed in a tuple unit including change data.
제1항에 있어서,
상기 단계 (c)는 상기 특정 정보가 표시된 데이터가 복수 개일 경우 (타임스탬프를 참조하여) 최신 변경 데이터를 기준으로 불일치하는 다른 데이터를 업데이트하는 것을 특징으로 하는 다중 데이터베이스의 동기화를 위한 방법.
According to claim 1,
The step (c) is a method for synchronization of multiple databases, characterized in that when there are a plurality of data in which the specific information is displayed, other data that is inconsistent is updated based on the latest changed data (with reference to the timestamp).
제1항에 있어서,
상기 단계 (c)는,
(c-1) 상기 다중 데이터베이스 중 하나(이하, 제3 데이터베이스)에서 비교 대상 데이터를 획득하기 위한 단계;
(c-2) 제3 데이터베이스에서 상기 다중 데이터베이스의 다른 데이터베이스(이하, 제4 데이터베이스)로 상기 획득된 비교 대상 데이터에 대한 식별 정보를 전달하기 위한 단계;
(c-3) 제4 데이터베이스에서 상기 식별 정보를 기초로 비교 대상 데이터를 조회하여 제3 데이터베이스로 전달하기 위한 단계; 및
(c-4) 상기 제4 데이터베이스로부터 획득된 비교 대상 데이터와 상기 제3 데이터베이스의 비교 대상 데이터를 취합한 전체의 비교 대상 데이터 중에서 각각의 비교 대상 데이터들 간의 상호 비교 후 불일치한 비교 대상 데이터 발견 시, 상기 특정 정보가 표시된 비교 대상 데이터를 기준으로 불일치하는 다른 비교 대상 데이터를 업데이트하여 일치시키기 하기 위한 단계;
를 포함하는 것을 특징으로 하는 다중 데이터베이스의 동기화를 위한 방법.
According to claim 1,
The step (c) is,
(c-1) obtaining comparison target data from one of the multiple databases (hereinafter, a third database);
(c-2) transmitting identification information on the obtained comparison target data from a third database to another database (hereinafter, referred to as a fourth database) of the multi-database;
(c-3) querying the comparison target data from the fourth database based on the identification information and transmitting the searched data to the third database; and
(c-4) When the comparison target data obtained from the fourth database and the comparison target data inconsistent are found after mutual comparison between the respective comparison target data among the total comparison target data obtained by collecting the comparison target data of the third database , updating and matching other comparison target data that do not match based on the comparison target data on which the specific information is displayed;
A method for synchronization of multiple databases comprising a.
제4항에 있어서,
상기 비교 대상 데이터는 투플(tuple) 단위의 데이터인 것을 특징으로 하는 다중 데이터베이스의 동기화를 위한 방법.
5. The method of claim 4,
The method for synchronization of multiple databases, characterized in that the comparison target data is data in a tuple unit.
다중 데이터베이스 중 적어도 하나의 데이터베이스(이하, 제1 데이터베이스)에서 데이터 변경 발생 시, 상기 제1 데이터베이스 외의 하나 이상의 다른 데이터베이스(이하, 제2 데이터베이스)에서 상기 변경 데이터를 복제하여 동기화를 수행하기 위한 동기화부;
상기 제1 데이터베이스의 변경 데이터를 상기 제2 데이터베이스의 복제 데이터와 구분할 수 있도록 특정 정보로 표시하기 위한 표식부; 및
상기 다중 데이터베이스 간의 서로 대응하는 데이터의 불일치 발생 시, 상기 특정 정보가 표시된 데이터를 기준으로 불일치하는 다른 데이터를 업데이트하기 위한 업데이트부;
를 포함하는 다중 데이터베이스의 동기화를 위한 장치.
Synchronization unit for performing synchronization by replicating the changed data in one or more other databases (hereinafter, second database) other than the first database when data change occurs in at least one database (hereinafter referred to as the first database) among the multiple databases ;
a marker for displaying the changed data of the first database as specific information to distinguish it from the duplicate data of the second database; and
an update unit configured to update other data that is inconsistent based on the data on which the specific information is displayed, when data discrepancy between the multiple databases occurs;
A device for synchronization of multiple databases comprising a.
제6항에 있어서,
상기 표식부는 변경 데이터를 포함하는 투플(tuple) 단위로 상기 특정 정보를 표시하는 것을 특징으로 하는 다중 데이터베이스의 동기화를 위한 장치.
7. The method of claim 6,
The apparatus for synchronization of multiple databases, characterized in that the marker displays the specific information in a tuple unit including change data.
제6항에 있어서,
상기 업데이트부는 상기 특정 정보가 표시된 데이터가 복수 개일 경우 최신 변경 데이터를 기준으로 불일치하는 다른 데이터를 업데이트하는 것을 특징으로 하는 다중 데이터베이스의 동기화를 위한 장치.
7. The method of claim 6,
The apparatus for synchronization of multiple databases, characterized in that the update unit updates other data that is inconsistent based on the latest changed data when there are a plurality of pieces of data on which the specific information is displayed.
제6항에 있어서,
상기 업데이트부는,
상기 다중 데이터베이스 중 하나(이하, 제3 데이터베이스)에서 비교 대상 데이터를 획득하기 위한 데이터획득부;
제3 데이터베이스에서 상기 다중 데이터베이스의 다른 데이터베이스(이하, 제4 데이터베이스)로 상기 획득된 비교 대상 데이터에 대한 식별 정보를 전달하기 위한 정보전달부;
제4 데이터베이스에서 상기 식별 정보를 기초로 해당 비교 대상 데이터를 조회하여 제3 데이터베이스로 전달하기 위한 데이터전달부; 및
상기 제4 데이터베이스로부터 획득된 비교 대상 데이터와 상기 제3 데이터베이스의 비교 대상 데이터를 취합한 전체의 비교 대상 데이터 중에서 각각의 비교 대상 데이터들 간의 상호 비교 후 불일치한 비교 대상 데이터 발견 시, 상기 특정 정보가 표시된 비교 대상 데이터를 기준으로 불일치하는 다른 비교 대상 데이터를 업데이트하여 일치시키기 위한 일치화부;
를 포함하는 것을 특징으로 하는 다중 데이터베이스의 동기화를 위한 장치.
7. The method of claim 6,
The update unit,
a data acquisition unit for acquiring comparison target data from one of the multiple databases (hereinafter, a third database);
an information transfer unit configured to transmit identification information on the acquired comparison target data from a third database to another database (hereinafter, referred to as a fourth database) of the multi-database;
a data transfer unit for inquiring the corresponding comparison target data from the fourth database based on the identification information and transmitting the searched data to the third database; and
When the comparison target data obtained from the fourth database and the comparison target data obtained from the third database are compared with each other among the total comparison target data obtained by the collection of the comparison target data, when inconsistent comparison target data is found, the specific information is a matching unit for updating and matching other inconsistent comparison target data based on the displayed comparison target data;
Device for synchronization of multiple databases comprising a.
제9항에 있어서,
상기 비교 대상 데이터는 투플(tuple) 단위의 데이터인 것을 특징으로 하는 다중 데이터베이스의 동기화를 위한 장치.
10. The method of claim 9,
The apparatus for synchronization of multiple databases, characterized in that the comparison target data is data in a tuple unit.
제1항 내지 제5항 중 어느 한 항의 상기 다중 데이터베이스의 동기화를 위한 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.A computer-readable recording medium recording a program for executing the method for synchronizing the multiple databases of any one of claims 1 to 5 on a computer. 제1항 내지 제5항 중 어느 한 항의 상기 다중 데이터베이스의 동기화를 위한 방법을 하드웨어와 결합하여 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록 매체에 저장된 애플리케이션.An application stored in a computer-readable recording medium in order to execute the method for synchronizing the multi-database according to any one of claims 1 to 5 in combination with hardware. 제1항 내지 제5항 중 어느 한 항의 상기 다중 데이터베이스의 동기화를 위한 방법을 컴퓨터에서 실행시키기 위하여 컴퓨터에서 읽을 수 있는 기록 매체에 저장된 컴퓨터 프로그램.A computer program stored in a computer-readable recording medium in order to execute the method for synchronizing the multi-database according to any one of claims 1 to 5 in a computer.
KR1020200092036A 2020-07-24 2020-07-24 Apparatus and method for synchronization of multiple databases KR102350282B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200092036A KR102350282B1 (en) 2020-07-24 2020-07-24 Apparatus and method for synchronization of multiple databases

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200092036A KR102350282B1 (en) 2020-07-24 2020-07-24 Apparatus and method for synchronization of multiple databases

Publications (1)

Publication Number Publication Date
KR102350282B1 true KR102350282B1 (en) 2022-01-13

Family

ID=79341961

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200092036A KR102350282B1 (en) 2020-07-24 2020-07-24 Apparatus and method for synchronization of multiple databases

Country Status (1)

Country Link
KR (1) KR102350282B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040010677A (en) * 2001-06-30 2004-01-31 인터내셔널 비지네스 머신즈 코포레이션 System and method for a caching mechanism for a central synchronization server
KR20040031292A (en) * 2002-10-04 2004-04-13 엘지전자 주식회사 Method for Restoring Database Synchronization in Pair System
JP2007249447A (en) * 2006-03-15 2007-09-27 Hitachi Ltd Method for displaying paired state of copy pair
KR20120009666A (en) 2010-07-20 2012-02-02 주식회사 웨어밸리 Database Replication Method And System Using Analyzing Network Packets

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040010677A (en) * 2001-06-30 2004-01-31 인터내셔널 비지네스 머신즈 코포레이션 System and method for a caching mechanism for a central synchronization server
KR20040031292A (en) * 2002-10-04 2004-04-13 엘지전자 주식회사 Method for Restoring Database Synchronization in Pair System
JP2007249447A (en) * 2006-03-15 2007-09-27 Hitachi Ltd Method for displaying paired state of copy pair
KR20120009666A (en) 2010-07-20 2012-02-02 주식회사 웨어밸리 Database Replication Method And System Using Analyzing Network Packets

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
논문1(2006.12.31) *

Similar Documents

Publication Publication Date Title
US9953051B2 (en) Multi-version concurrency control method in database and database system
US7464097B2 (en) Managing data integrity using a filter condition
CN106997378B (en) Redis-based database data aggregation synchronization method
US8892504B2 (en) Method and system for reconciling meta-data in a data warehouse
US7127475B2 (en) Managing data integrity
CN106462586B (en) The method and system that the consistency of Multi version concurrency control based on record is read
US10380143B2 (en) Merging of distributed datasets
US5758355A (en) Synchronization of server database with client database using distribution tables
CN103984715B (en) Data synchronizing and checking method, device and system of isomerous database
US7769714B2 (en) Automatic error correction for replication and instantaneous instantiation
US8332358B2 (en) Traversal-free rapid data transfer
US10504047B2 (en) Metadata-driven audit reporting system with dynamically created display names
US11868330B2 (en) Method for indexing data in storage engine and related apparatus
EP3152654A1 (en) Automatic software-update framework
CN109101368B (en) Data processing method and device
US9965535B2 (en) Client-side handling of transient duplicates for row-level replication
KR102350282B1 (en) Apparatus and method for synchronization of multiple databases
CN114185991A (en) Method and related device for realizing data synchronization based on distributed database
CN107168822B (en) Oracle streams exception recovery system and method
CN111090648B (en) Relational database data synchronization conflict resolution method
CN112463786A (en) Data synchronization method, system, server and storage medium
JP2009301352A (en) Test unit and test method
JPH10283319A (en) On-line transaction processing method and system therefor and medium
JP2002032254A (en) Information compatibility management system
CN117874007A (en) Spatial data storage management method, device, equipment and medium

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant