KR20010039125A - Synchronization system of remote database by transaction transmission - Google Patents

Synchronization system of remote database by transaction transmission Download PDF

Info

Publication number
KR20010039125A
KR20010039125A KR1019990047382A KR19990047382A KR20010039125A KR 20010039125 A KR20010039125 A KR 20010039125A KR 1019990047382 A KR1019990047382 A KR 1019990047382A KR 19990047382 A KR19990047382 A KR 19990047382A KR 20010039125 A KR20010039125 A KR 20010039125A
Authority
KR
South Korea
Prior art keywords
transaction
module
database
transmission
computer
Prior art date
Application number
KR1019990047382A
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 KR1019990047382A priority Critical patent/KR20010039125A/en
Publication of KR20010039125A publication Critical patent/KR20010039125A/en

Links

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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Abstract

PURPOSE: A distributed database synchronization system is provided to synchronize the information shared by systems with independent databases, specially by transmitting or receiving transactions generated or updated in local databases of each computer. CONSTITUTION: The system comprises a plurality of computers(100), a local database(200) and a transaction management system(300). The computers(100) are geographically distributed but connected via a network. The transactions, generated at the local database(200), are transmitted to the transaction management system(300) to synchronize the database among the computers(100). The computer(100) includes a transaction storage module(101), a communication processor(102), a log management module(103), and a script write-out module(104). The transaction storage module(101) stores the transaction data, generated in the database, at a transaction file by referring to the data in a configuration file. The communication processor(102) communicate the transaction file with the transaction management system(300).

Description

트랜잭션 송신을 통한 분산 데이터베이스의 동기화 시스템{Synchronization system of remote database by transaction transmission}Synchronization system of remote database by transaction transmission

본 발명은 지리적으로 분산되어 있으면서 독립된 데이터베이스를 가진 시스템간에 공유된 정보를 트랜잭션 송신으로 동기화할 수 있도록 하는 트랜잭션 송신을 통한 분산 데이터베이스의 동기화 시스템에 관한 것이다.The present invention relates to a system for synchronizing distributed databases through transactional transmission that enables geographically distributed and synchronized information shared between systems with independent databases to transactional transmission.

종래에는 지리적으로 분산된 컴퓨팅 환경에서의 데이터베이스 동기화 방법으로는, 데이터베이스 시스템의 데이터 관리를 위해 화일 시스템을 사용하여 응용 프로그램머들 각자가 자신의 응용 프로그램에서 자신의 데이터를 데이터 정의어(data definition language)로 정의하여 사용하고 있다.Conventionally, as a database synchronization method in a geographically dispersed computing environment, a file system is used for data management of a database system, and each application programmer uses the data definition language as a data definition language. It is defined as).

그러므로, 같은 기능과 같은 성격을 갖는 데이터들에 대해서 여러 시스템에서 중복되어 선언되어 지는 문제가 발생되어 각각의 데이터를 정의하는데 소요되는 시간의 낭비와 중복성이 제거된 완전한 데이터를 얻지 못하는 문제가 발생하였으며, 또한 점차 통신 기술에 대한 수요 증가와 각종 서비스 제공 요구의 증가로 시스템 데이터의 양이 급증하게 되므로, 많은 과부하가 발생하게 되는 문제가 있다.Therefore, there is a problem that duplicated declarations are made in various systems for data having the same function and characteristics, and thus, a problem of not getting complete data without wasting time and redundancy required to define each data has occurred. In addition, since the amount of system data is rapidly increased due to an increase in demand for communication technology and an increase in demand for providing various services, a lot of overload occurs.

또한, 관계형 데이터베이스를 고려한다면 이름과 애튜리뷰트(attribute)가 같은, 동일한 릴레이션(relation)을 여러 개의 컴퓨터가 각각 자신의 로컬 데이터베이스에 저장하고 관리하게 된다.Also, considering a relational database, multiple computers each store and manage the same relation in the same local database, with the same name and attributes.

이러한 컴퓨팅 환경에서의 각 컴퓨터의 데이터베이스에 저장된 데이터의 정확성이 문제가 되므로, 각 컴퓨터가 참조하고 있는 데이터가 네트워크 상의 다른 컴퓨터에 저장된 데이터와 일치하는지의 여부와 최신의 것인지를 확인할 수 있어야 사용자가 신뢰할 수 있다.Because the accuracy of the data stored in each computer's database in such a computing environment is an issue, it is important to ensure that the data referenced by each computer matches and is up-to-date with data stored on other computers on the network. Can be.

만약, 컴퓨터의 프로세스가 처리하기 위해 참조한 데이터가 최근 변경된 사항을 반영한 것이 아니라면, 이후에 처리한 결과는 신뢰 할 수가 없으며, 또한 이러한 문제가 재정적인 문제(금융기관 등)와 관련된 데이터처럼 실시간으로 발생되는 사항(데이터의 생성, 삭제, 변경)을 참조해야 하는 경우에 그 심각성과 중요성은 더욱 증가되는 문제가 발생한다.If the data referenced by a computer's process does not reflect recent changes, then the results of subsequent processing are unreliable, and these problems occur in real time as data related to financial problems (financial institutions, etc.). In the case where reference is made (creation, deletion, change) of data, the severity and importance increase.

본 발명은 상기한 종래의 문제를 해결하기 위해 안출된 것으로서, 분산 컴퓨팅 환경에서 독립된 데이터베이스를 가진 시스템간에 공유된 정보를 데이터베이스에 발생한 트랜잭션을 실시간으로 송/수신하여 네트워크화된 컴퓨터 시스템의 데이터베이스에 실시간으로 반영할 수 있도록 함으로써, 데이터베이스 내에 동일한 내용의 데이터가 존재하면서 실시간으로 변경사항을 참조할 필요가 있는 경우에 최종 정보를 실시간으로 반영하여 그 데이터의 정확성 및 신뢰성을 향상시켜 주도록 하는 트랜잭션 송신을 통한 분산 데이터베이스의 동기화 시스템을 제공함을 그 목적으로 한다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems. In the distributed computing environment, the information shared between systems having independent databases is transmitted and received in real time to a database of a networked computer system in real time. If the same data exists in the database and needs to refer to the change in real time, it is distributed through transaction transmission to improve the accuracy and reliability of the data by reflecting the final information in real time. Its purpose is to provide a synchronization system for the database.

도 1은 본 발명에 따른 트랜잭션 송신을 통한 분산 데이터베이스의 동기화 시스템의 블럭 구성도.1 is a block diagram of a synchronization system of a distributed database through transaction transmission according to the present invention.

도 2는 도 1에 있어, 각 컴퓨터 및 트랜잭션 관리 시스템의 상세 블럭 구성도.Fig. 2 is a detailed block diagram of each computer and transaction management system in Fig. 1;

<도면의 주요 부분에 대한 부호의 설명><Description of the code | symbol about the principal part of drawing>

100... 컴퓨터 200... 데이터베이스100 ... Computer 200 ... Database

300... 트랜잭션 관리 시스템 101... 트랜잭션 저장모듈300 ... Transaction Management System 101 ... Transaction Storage Module

102,301... 통신 프로세서 103,304... 로그 관리모듈102,301 ... Communication Processor 103,304 ... Log Management Module

104... 스크립트 작성모듈 105... 데이터베이스 관리 시스템Scripting Module 105 Database Management System

302... 트랜잭션 분석모듈 303... 송신결과 확인모듈302 ... Transaction analysis module 303 ... Transmission result confirmation module

305... 재전송부 102a,301c... 송신모듈305 ... retransmission section 102a, 301c ... transmission module

102b,301d... 송신결과 수신모듈 102c,301a... 수신모듈102b, 301d ... Transmission result Receiving module 102c, 301a ... Receiving module

102d,301b... 수신결과 송신모듈 305a... 결과 처리모듈102d, 301b ... Receive Result Sending Module 305a ... Result Processing Module

305b... 재 송신 지원모듈 305c... 재 송신모듈305b ... resend module 305c ... resend module

상기한 목적 달성을 위한 본 발명에 따른 트랜잭션 송신을 통한 분산 데이터베이스의 동기화 시스템은,The synchronization system of the distributed database through the transaction transmission according to the present invention for achieving the above object,

지리적으로 분산된 데이터베이스로 부터 동기화를 필요로 하는 릴레이션에 새로운 데이터의 트랜잭션(transaction)이 발생할 경우 해당 트랜잭션을 저장한 후 네트워크로 전송하며, 네트워크를 통해 트랜잭션을 수신받은 결과가 데이터베이스에 반영될 수 있도록 하는 다수의 컴퓨터(Remote Computer)와;When a new data transaction occurs in a relation that requires synchronization from a geographically dispersed database, the transaction is saved and transmitted to the network so that the result of receiving the transaction through the network can be reflected in the database. A plurality of computers (Remote Computer);

상기의 각 컴퓨터 정보와 컴퓨터로 부터 전송된 트랜잭션을 수신하고 새로운 트랜잭션을 전송하여 데이터베이스에 대한 정보를 관리해 주는 트랜잭션 관리 시스템을 포함하여 구성된다.And a transaction management system for receiving the computer information and the transaction transmitted from the computer and transmitting a new transaction to manage information on the database.

그리고, 각각의 컴퓨터는, 데이터베이스에 발생한 트랜잭션 정보를 트랜잭션 파일에 저장하는 트랜잭션 저장모듈과, 상기 트랜잭션 관리 시스템과 트랜잭션을 송신 및 수신하며 송수신 결과를 전송하는 통신 프로세서와, 통신 프로세서의 송수신에 따른 각종 작업결과를 로그파일(Log File)에 저장하는 로그 관리모듈과, 수신받은 트랜잭션을 데이터베이스에 반영할 수 있도록 스크립트를 작성하고 데이터베이스에 반영될 수 있도록 지원하는 스크립트 작성모듈과, 상기 스크립트 작성모듈로 부터 작성된 스크립트를 데이터베이스에 반영하고 데이터베이스를 관리하는 데이터베이스 관리 시스템을 포함한 것을 특징으로 하며,Each computer includes a transaction storage module that stores transaction information generated in a database in a transaction file, a communication processor that transmits and receives a transaction with the transaction management system, and transmits and receives a result of the transaction, and various types of transmission and reception of the communication processor. Log management module that stores the work results in a log file, a script writing module for writing a script to reflect the received transaction to the database and supporting the reflected in the database, and from the script writing module It includes a database management system that reflects the written script to the database and manages the database.

여기서, 각 컴퓨터의 통신 프로세서는 트랜잭션을 트랜잭션 관리 시스템에 송신하는 송신모듈과, 상기 트랜잭션 송신결과를 수신하는 송신결과 수신모듈과, 트랜잭션 관리 시스템으로 부터 다른 컴퓨터에 대한 트랜잭션을 수신받는 수신모듈과, 상기 수신결과를 송신하는 수신결과 송신모듈을 포함한 것을 특징으로 한다.Here, the communication processor of each computer includes a transmitting module for transmitting a transaction to a transaction management system, a transmission result receiving module for receiving the transaction transmission result, a receiving module for receiving a transaction for another computer from the transaction management system; And a reception result transmission module for transmitting the reception result.

한편, 상기 트랜잭션 관리 시스템은, 각 컴퓨터에서 발생되는 트랜잭션을 수신 및 송신하고 그 송수신 결과를 전송하는 통신 프로세서와, 상기 통신 프로세서에 의해 수신받은 트랜잭션을 분석하고 이를 전송할 대상 컴퓨터를 선정하는 트랜잭션 분석모듈과, 상기 통신 프로세서로 부터 트랜잭션 송신결과를 받아서 송신여부를 확인하고 재 처리할 정보를 선정하는 송신결과 확인모듈과, 트랜잭션 관련 로그를 저장하는 트랜잭션 로그모듈과, 재송신할 트랜잭션을 트랜잭션 파일에 저장한 후 재송신할 정보를 읽어 들여 대상 컴퓨터로 재 송신하는 재 송신부로 구성된다.On the other hand, the transaction management system, a communication processor for receiving and transmitting a transaction generated in each computer and transmitting the transmission and reception results, and a transaction analysis module for analyzing a transaction received by the communication processor and selecting a target computer to transmit it And a transmission result confirming module for receiving a transaction transmission result from the communication processor and confirming transmission and selecting information to be reprocessed, a transaction log module for storing transaction related logs, and storing a transaction to be resent in a transaction file. And a resending unit that reads the information to be resent and retransmits it to the target computer.

여기서, 상기 트랜잭션 관리 시스템의 통신 프로세서는 각 컴퓨터로 부터 트랜잭션을 수신하는 수신모듈과, 상기 수신결과를 전송하는 수신결과 송신모듈과, 트랜잭션을 송신하는 송신모듈과, 트랜잭션 송신결과를 수신하는 송신결과 수신모듈을 포함한 것을 특징으로 하며,Here, the communication processor of the transaction management system includes a reception module for receiving a transaction from each computer, a reception result transmission module for transmitting the reception result, a transmission module for transmitting a transaction, and a transmission result for receiving a transaction transmission result Characterized by including a receiving module,

상기 재송신부는, 재송신할 트랜잭션을 트랜잭션 파일에 저장하는 결과 처리모듈과, 상기 트랜잭션 파일에서 재송신할 정보를 읽어 들여 재송신을 지원하는 재송신 지원모듈과, 상기 재송신 지원모듈에서 읽어들인 트랜잭션 파일을 컴퓨터로 전송하는 재 송신모듈을 포함한 것을 특징으로 한다.The resending unit transmits a result processing module for storing a transaction to be retransmitted in a transaction file, a retransmission support module for retransmitting by reading information to be retransmitted from the transaction file, and a transaction file read by the retransmission support module to a computer. Characterized in that it comprises a retransmission module.

상기와 같이 구성되는 본 발명 트랜잭션을 이용한 데이터베이스 동기화 시스템에 대하여 첨부된 도면을 참조하면 다음과 같다.Referring to the accompanying drawings, a database synchronization system using a transaction of the present invention configured as described above is as follows.

도 1은 본 발명에 따른 트랜잭션 송신을 통한 분산 데이터베이스의 동기화 시스템의 블럭도이며, 도 2는 도 1에 있어 컴퓨터와 트랜잭션 관리 시스템의 상세 블럭 구성도이다.1 is a block diagram of a synchronization system of a distributed database through transaction transmission according to the present invention, and FIG. 2 is a detailed block diagram of a computer and a transaction management system in FIG.

먼저, 도 1을 참조하면, 지리적으로 분산된 다수의 컴퓨터(100)가 네트워크에 상호 연결되며, 각 컴퓨터(100)의 로컬 데이터베이스(200)에서 발생되는 작업 단위 즉, 트랜잭션을 네트워크 상에 연결된 트랜잭션 관리 시스템(300)으로 전송하여 다른 컴퓨터와의 데이터베이스 동기화가 이루어 지도록 한다.First, referring to FIG. 1, a plurality of geographically dispersed computers 100 are interconnected to a network, and a unit of work generated in a local database 200 of each computer 100, that is, a transaction connected on a network. By transmitting to the management system 300, the database is synchronized with other computers.

도 2를 참조하면, 각 컴퓨터(100)는 데이터베이스(200)에서 발생한 트랜잭션 정보를 컨피그레이션 파일(F1)에 저장된 정보를 참조하여 트랜잭션 파일(F2)에 저장하는 트랜잭션 저장모듈(101)과, 트랜잭션 관리 시스템(300)과 트랜잭션 정보를 송신 및 수신하며 그 송수신 결과를 응답하는 모듈(102a)(102b)(102c)(102d)로 이루어진 통신 프로세서(102)와, 송신 및 수신되는 트랜잭션의 작업결과를 로그파일(F3)에 저장하는 로그 관리모듈(103)과, 상기 수신된 트랜잭션 정보를 이용하여 스크립트를 작성하여 데이터베이스(DB;Database)(200)에 반영될 수 있도록 데이터베이스 관리 시스템(DBMS)(105)에 전달하는 스크립트 작성모듈(104)로 이루어진다.Referring to FIG. 2, each computer 100 refers to a transaction storage module 101 for storing transaction information generated in the database 200 in a transaction file F2 with reference to information stored in the configuration file F1, and transaction management. A communication processor 102 comprising modules 102a, 102b, 102c, and 102d that transmits and receives transaction information with the system 300 and responds to the results of the transmission and reception, and logs the operation results of the transmitted and received transactions. Log management module 103 to store in the file (F3), and the database management system (DBMS) 105 to create a script using the received transaction information to be reflected in the database (DB; Database) (200) It consists of a script writing module 104 to pass on.

각 컴퓨터(100)의 컨피그레이션 파일(Configuration File)(F1)에는 송신할 트랜잭션의 종류와 릴레이션의 정보가 등록되어 있다.In the configuration file F1 of each computer 100, information on the type of transaction to be transmitted and the relation information is registered.

그리고, 트랜잭션 관리 시스템(300)은, 트랜잭션 정보를 송신 및 수신하며 송수신 결과를 응답하는 모듈(301a)(301b)(301c)(301d)로 이루어진 통신 프로세서(301)와, 상기 수신받은 트랜잭션 정보를 분석하고 컨피그레이션 파일(F4)으로 부터 트랜잭션을 전송할 대상 컴퓨터를 선정한 다음 통신 프로세서(301)에 전달하는 트랜잭션 분석모듈(302)과, 트랜잭션의 송신결과를 확인하는 송신결과 확인모듈(303)과, 상기 트랜잭션 관련 로그를 로그파일(F5)저장하는 트랜잭션 로그모듈(304)과, 상기 트랜잭션 송신결과를 받아서 재 처리할 정보를 선정하고 트랜잭션을 트랜잭션 파일(F6)에 저장한 후 재전송하는 모듈(305a)(305b)(305c)로 이루어진 재전송부(305)로 이루어진다.The transaction management system 300 transmits and receives transaction information, and transmits and receives the received transaction information to the communication processor 301 including modules 301a, 301b, 301c, and 301d that respond to the transmission and reception results. A transaction analysis module 302 for analyzing and selecting a target computer to transmit a transaction from the configuration file F4 to the communication processor 301, a transmission result checking module 303 for confirming a transmission result of the transaction, and A transaction log module 304 for storing transaction related logs in a log file (F5), and a module (305a) for selecting information to be reprocessed after receiving the transaction transmission result, storing the transaction in a transaction file (F6), and then resending ( It consists of a retransmission section 305 consisting of (305b) (305c).

여기서, 컨피그레이션 파일(Configuration File)(F4)은 트랜잭션 송신 대상을 선정하기 위해 필요한 컴퓨터 및 로컬 데이터베이스 내의 릴레이션 정보와 재송신에 관련된 정보를 기록한다.Here, the configuration file F4 records relation information in the computer and local database necessary for selecting a transaction transmission target and information related to retransmission.

상기 트랜잭션(transaction)은 데이터 파일의 내용에 영향을 미치는 모든 거래 즉, 입고 및 출고, 판매, 반품, 입출금, 정정, 손실등의 모든 행위 또는 컴퓨터가 처리해야 할 단위 작업을 가리키는 말이다. 트랜잭션 파일(F2)(F6)은 상기 단위 작업을 데이터베이스에 반영할 수 있도록 정의된 언어를 이용해서 표현, 저장되는 파일이다.The transaction refers to any transaction that affects the contents of the data file, that is, all operations such as goods receipt and release, sale, return, deposit and withdrawal, correction, and loss, or unit operations to be processed by the computer. The transaction files F2 and F6 are files that are represented and stored using a language defined to reflect the unit work in the database.

그리고, 로그파일(log file)(F3)(F5)는 트랜잭션의 송신 및 수신 결과를 내용으로 기록하는 것이며, 로그(log)는 시스템의 작업 처리내용이나 활동사항을 시간의 흐름에 따라 기록하는 것 또는 그 기록파일의 원인, 규명 및 복원을 하는 데 사용된다.The log files (F3) and (F5) are records of transaction transmission and reception results as contents, and the logs are records of system processing and activities over time. Or to cause, identify, and restore the log file.

이하 첨부된 도면을 참조하여 본 발명 분산 컴퓨팅환경에서의 트랜잭션 송신을 통한 데이터베이스 동기화 시스템에 대하여 설명하기로 한다.Hereinafter, a database synchronization system through transaction transmission in the distributed computing environment of the present invention will be described with reference to the accompanying drawings.

먼저, 도 1을 참조하면, 지리적으로 분산된 각각의 컴퓨터(100)가 네트워크(network) 상에 상호 연결되어 자신의 로컬 데이터베이스(200)에서 발생되는 작업 단위 즉, 트랜잭션을 트랜잭션 파일에 저장하게 된다.First, referring to FIG. 1, each geographically dispersed computer 100 is interconnected on a network to store a unit of work generated in its local database 200, that is, a transaction, in a transaction file. .

여기에서 트랜잭션은 데이터 파일의 내용에 영향을 미치는 모든 거래, 즉 입출고, 판매 및 반품, 입출금, 정정 또는 손실등을 처리하기 위한 단위작업을 가리키는 말로서, 이러한 작업은 대개 내용이 간단하고, 처리시간이 짧으며, 표준적인 형태로 입력된다.In this context, a transaction refers to a unit of work that handles all transactions that affect the contents of a data file: incoming and outgoing, sales and returns, deposits, withdrawals, corrections, or losses. These operations are usually simple and have a long processing time. It is short and entered in standard form.

그리고, 트랜잭션 파일은 자료를 처리할 때 상대적으로 잘 변하는 트랜잭션등과 같은 자료를 저장하는 파일이다.Transaction files are files that store data such as transactions that change relatively well when processing data.

이때, 상기 트랜잭션 파일에 트랜잭션이 저장이 되면 통신 프로세서는 네트워크 상에 연결된 트랜잭션 관리 시스템(300)으로 실시간 트랜잭션을 송신하고, 상기 트랜잭션 송신결과를 수신받아 로그에 기록한다.In this case, when a transaction is stored in the transaction file, the communication processor transmits a real time transaction to the transaction management system 300 connected on the network, receives the transaction transmission result, and records the result in a log.

그러면, 임의의 컴퓨터(100)로 부터 트랜잭션을 수신받은 트랜잭션 관리 시스템(TMS; Transaction Management System)(300)은 수신결과를 응답하고, 상기 수신된 트랜잭션을 컨피그레이션 파일을 이용하여 분석한 후 상기의 트랜잭션을 전송할 대상 컴퓨터들을 선정한다.Then, the transaction management system (TMS) 300 which receives a transaction from any computer 100 responds to the reception result, analyzes the received transaction using a configuration file, and then executes the transaction. Select the computers to which you want to send.

여기서, 컨피그레이션 파일에는 트랜잭션 송신 대상을 선정하기 위해 필요한 컴퓨터 정보 및 로컬 데이터베이스 내의 릴레이션 정보와 재송신과 관련된 정보가 기록되어 있다.Here, the configuration file records computer information necessary for selecting a transaction transmission target, relation information in a local database, and information related to retransmission.

그리고, 대상컴퓨터가 선정되면 트랜잭션을 대상 컴퓨터에 송신하고, 그 송신에 대한 응답이 있을 경우에는 그 결과를 로그파일에 저장하며, 송신에 대한 응답이 없을 경우에는 상기의 트랜잭션을 트랜잭션 파일에 저장하고 재송신에 관련된 로그를 생성한 후 재 송신을 행한다.If the target computer is selected, the transaction is sent to the target computer. If there is a response to the transmission, the result is stored in a log file. If there is no response, the transaction is stored in the transaction file. Resend after generating a log related to retransmission.

상기 트랜잭션 관리 시스템(300)에서 전송된 트랜잭션을 수신받은 대상 컴퓨터들(100)은 수신받았다고 응답하고, 이러한 내용을 로그파일에 기록하며, 상기의 수신된 트랜잭션을 반영하기 위해 스크립트를 작성한 후 데이터베이스(200)에 결과를 반영한다.The target computers 100 that have received the transaction transmitted from the transaction management system 300 respond to the received message, record the contents in a log file, write a script to reflect the received transaction, and then write a database ( Reflect the results).

이와같이 지리적으로 분산되어 있으면서 독립된 데이터베이스를 가진 시스템간에 발생되는 트랜잭션을 네트워크상의 다른 컴퓨터로 실시간으로 송/수신하는 트랜잭션 관리 시스템(300)이 각 컴퓨터 정보와 데이터베이스에 대한 정보를 관리해 줌으로써, 컴퓨터 시스템간에 데이터를 실시간으로 공유해야 하는 경우 데이터베이스의 정확한 동기화를 구현하게 된다.As such, the transaction management system 300, which transmits and receives transactions occurring between systems having geographically dispersed and independent databases in real time to other computers on the network, manages each computer information and database information, thereby providing data between computer systems. If you need to share the data in real time, you will implement accurate synchronization of the database.

이를 위해 도 2를 참조하여 상세하게 설명하면,For this purpose, it will be described in detail with reference to FIG.

임의의 컴퓨터(100)에서 동기화를 필요로 하는 릴레이션에 새로운 데이터를 생성하거나, 삭제, 혹은 변경하는 트랜잭션이 발생한 경우, 트랜잭션 저장모듈(TSM; Transaction Store Module)(101)은 컨피그레이션 파일(F1)로 부터 송신할 트랜잭션의 종류와 릴레이션의 정보를 읽은 다음 해당 트랜잭션 정보를 트랜잭션 파일(F2)에 저장한다.When a transaction occurs that creates, deletes, or changes new data in a relation that requires synchronization in any computer 100, the transaction store module (TSM) 101 is transferred to the configuration file F1. Reads information of transaction type and relation to send and stores the transaction information in transaction file (F2).

이때, 컴퓨터(100)의 통신 프로세서(102)는 트랜잭션을 송신함에 있어, 상기 트랜잭션 파일(F2)의 상태를 체크하다가 전송해야할 트랜잭션에 대한 정보가 입력된 경우 이를 네크워크를 통해 트랜잭션 관리 시스템(300)에 송신하고, 트랜잭션 관리 시스템(300)으로 부터 상기의 송신결과를 수신하여 로그관리 모듈(103)에 전달하여 로그 파일(F3)에 기록한다.In this case, when transmitting a transaction, the communication processor 102 of the computer 100 checks the state of the transaction file F2 and then inputs information on a transaction to be transmitted through the network. And transmit the result of the transmission from the transaction management system 300 to the log management module 103 and record the result in the log file F3.

즉, 통신 프로세서(102)의 송신모듈(TTM; Transaction Transfer Module)(102a)은 트랜잭셕 파일의 상태를 체크한 후 트랜잭션에 대한 정보가 입력된 경우 해당 트랜잭션을 트랜잭션 관리 시스템(300)으로 송신하고, 송신결과 수신모듈(TTRM; Transaction Transfer Receive Module)(102b)은 상기 트랜잭션의 송신결과를 트랜잭션 관리 시스템(300)으로 부터 수신받는다.That is, the transaction transfer module (TTM) 102a of the communication processor 102 checks the status of the transaction file and transmits the transaction to the transaction management system 300 when information about the transaction is input. The transmission result receiving module (TTRM) 102b receives the transmission result of the transaction from the transaction management system 300.

그리고, 상기 통신 프로세서(102)의 송신결과 수신모듈(102b)은 트랜잭션 송신결과를 수신받은 다음 이를 송신모듈(102a)에 알려주고, 로그관리모듈(103)에 상기의 트랜잭션 송신결과를 전달하게 된다.Then, the transmission result receiving module 102b of the communication processor 102 receives the transaction transmission result and then informs the transmission module 102a of the transaction transmission result, and transmits the transaction transmission result to the log management module 103.

그러면, 로그관리모듈(TLM; Transaction Log Module)(103)은 각종 작업결과를 로그로 기록하기 위해 상기의 트랜잭션 송신결과를 로그파일(F3)에 로그로 기록한다.Then, the log management module (TLM) 103 logs the transaction transmission results in a log file F3 in order to log various work results in a log.

한편, 트랜잭션 관리 시스템(300)의 통신 프로세서(301)는 트랜잭션을 수신함에 있어, 컴퓨터(100)의 통신 프로세서(102)로 부터 트랜잭션을 수신받아 이를 트랜잭션 분석모듈(302)에 전달하고, 상기 트랜잭션의 수신결과를 해당 컴퓨터(100)로 응답해 준다.On the other hand, when receiving a transaction, the communication processor 301 of the transaction management system 300 receives a transaction from the communication processor 102 of the computer 100 and transmits it to the transaction analysis module 302, and the transaction Answer the received result of the computer 100.

즉, 통신 프로세서(301)의 수신모듈(301a)은 컴퓨터(100)의 송신모듈(102a)에서 송신된 트랜잭션을 수신받고 그 결과를 수신결과 송신모듈(301b)에 전달하며, 수신결과 송신모듈(301b)은 수신결과에 대한 응답으로 해당 컴퓨터(100)의 송신결과 수신모듈(102b)로 송신하여 알려준다.That is, the receiving module 301a of the communication processor 301 receives the transaction transmitted from the transmitting module 102a of the computer 100 and transmits the result to the receiving result transmitting module 301b, and receives the receiving result transmitting module ( 301b) transmits and transmits to the transmission result receiving module 102b of the corresponding computer 100 in response to the reception result.

상기의 트랜잭션 분석모듈(TAM; Transaction Analysis Module)(302)은 수신된 트랜잭션을 반영해야 할 릴레이션의 이름과 컴퓨터 정보를 컨피그레이션 파일(F4)에 의해 분석 및 추출하여 전송해야 할 대상 컴퓨터들을 선정하게 된다.The Transaction Analysis Module (TAM) 302 selects target computers to be analyzed, extracted, and transmitted by the configuration file F4 by name and computer information of a relation that should reflect the received transaction. .

여기서, 컨피그레이션 파일(F4)은 트랜재션 송신 대상을 선정하기 위해 필요한 컴퓨터 및 로컬 데이터베이스 내의 릴레이션 정보와 재송신에 관련된 정보를 기록하고 있다.Here, the configuration file F4 records relation information and retransmission information in the computer and local database necessary for selecting a transaction transmission target.

그리고, 트랜잭션을 전송해야 할 대상 컴퓨터가 선정되면, 트랜잭션 분석모듈(302)은 트랜잭션 정보와 해당 컴퓨터 정보를 통신 프로세서(301)에 전달하게 된다.When the target computer to which the transaction is to be transmitted is selected, the transaction analysis module 302 transfers the transaction information and the corresponding computer information to the communication processor 301.

이때, 트랜잭션 관리 시스템(300)의 통신 프로세서(301)는 트랜잭션을 송신함에 있어, 트랜잭션 분석모듈(302)로 부터 전달되는 트랜잭션 정보와 해당 컴퓨터 정보를 이용하여 해당 컴퓨터에 트랜잭션 정보를 전송해 주며, 그 전송결과를 수신하게 된다.At this time, the communication processor 301 of the transaction management system 300 transmits the transaction information to the computer using the transaction information and the corresponding computer information transmitted from the transaction analysis module 302 in transmitting a transaction, The transmission result is received.

즉, 통신 프로세서(301)의 송신모듈(TTM)(301c)은 해당 컴퓨터 정보를 이용하여 컴퓨터(100)의 통신 프로세서(102)에 트랜잭션 정보를 송신하고 그 결과를 송신결과 수신모듈(TTRM)(301d)에서 수신한다.That is, the transmission module (TTM) 301c of the communication processor 301 transmits transaction information to the communication processor 102 of the computer 100 using the corresponding computer information, and transmits the result to a transmission result receiving module (TTRM) ( 301d).

그리고, 통신 프로세서(301)의 송신결과 수신모듈(301d)에서 송신결과를 수신하여 그 결과를 송신결과 확인모듈(303)에 전달하게 되면, 송신결과 확인모듈(TTCM; Transaction Transfer Confirm Module)(303)은 송신여부를 확인하게 된다.When the transmission result reception module 301d of the communication processor 301 receives the transmission result and transmits the result to the transmission result confirmation module 303, a transmission result confirmation module (TTCM) 303 ) Confirms transmission.

이때, 송신결과 확인모듈(303)의 확인결과 트랜잭션 송신에 성공한 경우에는 관련 정보를 로그관리 모듈(TLM)(304)에 넘겨 그 내용을 로그파일(F5)에 기록하게 된다.At this time, if the transmission result of the confirmation result of the transmission result confirming module 303 is successful, the relevant information is passed to the log management module (TLM) 304 and the contents thereof are recorded in the log file F5.

그러나, 송신결과 확인모듈(303)의 확인결과 트랜잭션 송신에 실패한 경우, 관련정보들을 트랜잭션 로그모듈(304)에 넘겨 그 내용을 로그파일(F5)에 기록하고재 전송을 위해 재전송부(305)를 실행시킨다.However, if the transaction transmission fails as a result of the confirmation of the transmission result confirming module 303, the relevant information is transferred to the transaction log module 304, the contents thereof are recorded in the log file F5, and the retransmission unit 305 is provided for retransmission. Run it.

상기 재전송부(305)는 재전송할 트랜잭션 파일(F6)을 저장한 다음 트랜잭션 정보를 상기에서 실패했던 컴퓨터를 대상으로 하여 재 전송하게 되는 데,The retransmission unit 305 stores the transaction file F6 to be retransmitted and then retransmits the transaction information to the computer that failed.

재전송부(305)의 결과처리 모듈(RPM; Result Process Module)(305a)에서 재 전송할 트랜잭션을 트랜잭션 파일(F6)에 저장하면, 재송신지원모듈(RTSM; Re-Transfer Support Module)(305b)에서 트랜잭션 파일(F5)의 정보를 체크하면서 재전송해야 할 정보가 있으면 재 전송할 정보를 읽어 들여 재송신 모듈(305c)에 송신하고, 재송신에 관련된 로그를 로그관리모듈(304)에 전달하여 로그파일(F5)에 기록되게 한다.If the result processing module (RPM) 305a of the retransmission unit 305 stores the transaction to be retransmitted in the transaction file F6, the transaction is transmitted in the re-transfer support module (RTSM) 305b. If there is information to be retransmitted while checking the information of the file F5, the retransmission information is read and transmitted to the retransmission module 305c, and the log related to the retransmission is transferred to the log management module 304 to the log file F5. Let it be recorded.

그러면, 재송신모듈(RTM; Re-Transfer Module)(305c)은 트랜잭션을 재전송하기 위해 필요한 정보를 컨피크레이션 파일(F4)로 부터 읽어 들여 송신모듈(301c)를 통해 컴퓨터(100)의 통신 프로세서(102)에 송신하고, 이번에도 송신이 되지 않으면 상기의 동작을 반복 수행하게 된다.Then, the Re-Transfer Module (RTM) 305c reads the information necessary for retransmitting the transaction from the configuration file F4, and transmits the communication processor of the computer 100 through the transmission module 301c. 102, and if the transmission is not performed again, the above operation is repeated.

한편, 컴퓨터(100)의 통신 프로세서(102)는 트랜잭션을 수신함에 있어, 트랜잭션관리 시스템(300)의 통신 프로세서(301)로 부터 트랜잭션을 수신받고 그 수신결과를 응답하며, 로그파일(F3)에 기록하게 된다.On the other hand, the communication processor 102 of the computer 100 receives a transaction from the communication processor 301 of the transaction management system 300 in response to receiving the transaction, and responds to the reception result, the log file (F3) Will be recorded.

즉, 통신 프로세서(102)의 수신모듈(TRM)(102c)은 트랜잭션 관리 시스템(300)의 송신모듈(TTM)(301c)로 부터 전송된 트랜잭션을 수신받고 그 결과를 수신결과 송신모듈(TRSM)(102d)에 전달하며, 수신결과 송신모듈(102d)은 수신결과를 송신결과 수신모듈(301d)로 송신하여 그 결과를 알려준다.That is, the receiving module (TRM) 102c of the communication processor 102 receives a transaction transmitted from the transmitting module (TTM) 301c of the transaction management system 300 and receives the result thereof. And the reception result transmission module 102d transmits the reception result to the transmission result reception module 301d and notifies the result.

또한, 상기 수신모듈(102c)은 트랜잭션의 수신결과에 대한 내용을 로그관리모듈(103)에 전달하여 로그파일(F3)에 기록하며, 수신받은 트랜잭션을 테이터 베이스에 반영하기 위해 스트립트 작성모듈(MSM; Make Script Module)(104)에 전달하여 스트립트를 작성하게 된다.In addition, the receiving module 102c transmits the contents of the transaction reception result to the log management module 103 and records the result in the log file F3, and writes the script writing module MSM to reflect the received transaction in the database. ; Make Script Module) 104 to write the script.

상기 스크립트 작성모듈(104)에서 작성된 스크립트는 데이터베이스 관리 시스템(DBMS; DataBase Management System)(105)에 전달되며, 데이터베이스관리 시스템(105)은 상기에서 수신된 트랜잭션에 대한 자료가 데이터베이스(200)에 반영될 수 있게 한다.The script created by the script creation module 104 is transferred to a database management system (DBMS) 105, and the database management system 105 reflects the data on the received transaction in the database 200. To be possible.

여기서, 각 컴퓨터(100)에서 사용하고 있는 데이터베이스 관리 시스템(105)은 동일한 것을 전제로 한다.Here, it is assumed that the database management system 105 used by each computer 100 is the same.

이와같이, 트랜잭션 관리 시스템(300)에서 각 컴퓨터 정보와 컴퓨터의 데이터베이스에 대한 트랜잭션 정보를 실시간으로 관리해 주도록, 데이터베이스에 실제 저장된 데이터가 아닌 데이터를 처리하는 트랜잭션 송/수신을 이용한 동기화를 구현하게 된다.As such, the transaction management system 300 implements synchronization using transaction transmission / reception to process data, not data actually stored in the database, so as to manage each computer information and transaction information about the database of the computer in real time.

따라서, 각 컴퓨터(100)에서 동기화를 필요로 하는 릴레이션에 새로운 데이터를 생성하거나, 삭제, 혹은 변경하는 트랜잭션이 발생하는 경우, 트랜잭션 관리 시스템(300)에 의해 서로 다른 컴퓨터로 실시간으로 생성되고, 삭제 혹은 변경된 데이터를 전송해 줌으로써 분산 데이터베이스에 저장된 데이터를 최근 또는 최종의 것으로 반영하기 때문에 각 컴퓨터가 참조하고 있는 데이터는 네트워크상의 다른 컴퓨터에 저장된 데이터와 항상 일치하게 된다.Therefore, when a transaction that generates, deletes, or changes new data in a relation requiring synchronization in each computer 100 occurs, the transaction management system 300 generates and deletes data in real time to different computers. Or, by transmitting changed data, the data stored in the distributed database is reflected as the latest or last, so that the data referenced by each computer will always match the data stored in other computers on the network.

이상에서 설명한 바와같이, 본 발명은 지리적으로 분산된 시스템간에 데이터를 실시간으로 서로 공유해야 하는 경우 트랜잭션의 송수신으로 데이터의 정확성을 보장하고 항상 최종의 데이터 정보를 참조하게 해주어 데이터베이스에 대한 신뢰성을 향상시키며, 또한 실시간으로 공유해야 할 데이터에 대한 식별과 트랜잭션 송/수신을 위한 시스템의 동기화를 해결하는 효과가 있다.As described above, the present invention ensures the accuracy of data by sending and receiving transactions and always refers to the final data information when data must be shared between geographically dispersed systems in real time, thereby improving reliability of the database. In addition, it has the effect of resolving the identification of data to be shared in real time and synchronization of the system for transaction transmission and reception.

Claims (4)

지리적으로 분산된 컴퓨팅환경에서 자신의 로컬 데이터베이스내의 릴레이션에 새로운 데이터의 트랜잭션이 발생할 경우 해당 트랜잭션을 저장 및 송신하며, 데이터베이스 동기화를 위해 트랜잭션을 수신하여 데이터베이스에 반영하는 다수의 컴퓨터와;A plurality of computers that store and transmit new data when a transaction occurs in a relation in its local database in a geographically distributed computing environment, and receive and reflect the transaction in a database for database synchronization; 분산된 로컬 데이터베이스의 동기화를 위해 상기 컴퓨터로 부터 송신된 트랜잭션을 수신하고 수신된 트랜잭션을 반영해야 할 컴퓨터 정보 및 릴레이션 정보를 추출하여 트랜잭션 송신 대상이 대는 컴퓨터를 선정하고, 상기 수신된 트랜잭션을 송신하는 트랜잭션 관리 시스템을 포함하여 구성된 것을 특징으로 하는 트랜잭션 송신을 통한 분산 데이터베이스의 동기화 시스템.Receives the transaction sent from the computer for synchronization of the distributed local database, extracts computer information and relation information that should reflect the received transaction, selects the computer to which the transaction is sent, and transmits the received transaction. A system for synchronizing distributed databases through transaction transmission, comprising a transaction management system. 제 1항에 있어서,The method of claim 1, 상기 컴퓨터 각각에는, 데이터베이스에 발생한 트랜잭션 정보를 트랜잭션 파일에 저장하는 트랜잭션 저장모듈과, 트랜잭션을 송신 및 수신하며 송수신 결과를 응답하는 통신 프로세서와, 상기 통신 프로세서의 송수신에 따른 각종 작업결과를 로그파일에 저장하는 로그관리모듈과, 상기 수신받은 트랜잭션을 데이터베이스에 반영할 수 있도록 스크립트를 작성하는 스크립트 작성모듈과, 상기 스크립트 작성모듈로 부터 작성된 스크립트를 데이터베이스에 반영하고 데이터베이스를 관리하는 데이터베이스 관리 시스템을 포함한 것을 특징으로 하는 트랜잭션 송신을 통한 분산 데이터베이스의 동기화 시스템.Each of the computers includes a transaction storage module that stores transaction information generated in a database in a transaction file, a communication processor that transmits and receives a transaction and responds to a result of transmission and reception, and various operation results according to transmission and reception of the communication processor in a log file. It includes a log management module for storing, a script writing module for writing a script to reflect the received transaction in the database, and a database management system for reflecting the script created from the script writing module to the database and manages the database. A distributed database synchronization system through transaction transmission. 제 1항에 있어서,The method of claim 1, 상기 트랜잭션 관리 시스템은, 각 컴퓨터에서 발생되는 트랜잭션을 수신 및 송신하고 그 송수신 결과를 응답하는 통신 프로세서와, 상기 통신 프로세서에 의해 수신받은 트랜잭션을 분석하고 이를 전송할 대상 컴퓨터를 선정하는 트랜잭션 분석모듈과, 상기 통신 프로세서로 부터 트랜잭션 송신결과를 받아서 송신여부를 확인하는 송신결과 확인모듈과, 트랜잭션 관련 로그를 저장하는 트랜잭션 로그모듈과, 상기 송신결과 확인모듈로 부터 정보를 전달받아 재송신할 트랜잭션을 저장한 후 재송신할 정보를 읽어 들여 대상 컴퓨터로 재 송신하는 재송신부를 포함한 것을 특징으로 하는 트랜잭션 송신을 통한 분산 데이터베이스의 동기화 시스템.The transaction management system includes a communication processor for receiving and transmitting a transaction generated in each computer and responding to the result of transmission and reception, a transaction analysis module for analyzing a transaction received by the communication processor and selecting a target computer to transmit the transaction; After receiving a transaction transmission result from the communication processor to confirm whether the transmission result transmission module, a transaction log module for storing the transaction-related log, and receives the information from the transmission result confirmation module and stores the transaction to be retransmitted A distributed database synchronization system through transaction transmission, comprising: a retransmission unit for retransmitting information to be retransmitted to a target computer. 제 3항에 있어서,The method of claim 3, wherein 상기 재전송부는, 트랜잭션 송신에 실패했을 경우 재 송신할 트랜잭션을 트랜잭션 파일에 저장하는 결과 처리모듈과, 상기 저장된 트랜잭션 파일에서 재송신할 트랜잭션 정보를 있는 경우 이를 전달하고 재송신에 관련된 로그를 기록하게 하는 재 송신 지원모듈과, 재송신에 필요한 컴퓨터 정보 및 릴레이션 정보를 읽어 들여 트랜잭션 정보를 재송신하는 재 송신모듈을 포함하는 것을 특징으로 하는 트랜잭션 송신을 통한 분산 데이터베이스의 동기화 시스템.The resending unit, a result processing module for storing a transaction to be resent in a transaction file when the transaction transmission fails, and a retransmission to transfer the transaction information to be retransmitted in the stored transaction file and to record a log related to the retransmission And a retransmission module for reading the computer information and relation information necessary for retransmission and retransmitting the transaction information.
KR1019990047382A 1999-10-29 1999-10-29 Synchronization system of remote database by transaction transmission KR20010039125A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990047382A KR20010039125A (en) 1999-10-29 1999-10-29 Synchronization system of remote database by transaction transmission

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990047382A KR20010039125A (en) 1999-10-29 1999-10-29 Synchronization system of remote database by transaction transmission

Publications (1)

Publication Number Publication Date
KR20010039125A true KR20010039125A (en) 2001-05-15

Family

ID=19617560

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990047382A KR20010039125A (en) 1999-10-29 1999-10-29 Synchronization system of remote database by transaction transmission

Country Status (1)

Country Link
KR (1) KR20010039125A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100671789B1 (en) * 2004-06-08 2007-01-22 주식회사 엘비에스플러스 Method for Synchronizing and Transmitting Data Between Distributed Spatial Data and System therefor
KR100693710B1 (en) * 1999-12-23 2007-03-13 주식회사 케이티 The Method for data consistency between master and slave database
KR101046338B1 (en) * 2008-07-18 2011-07-05 (주)디에프아이비즈 Method of extracting change data through local database direct connection under global database
US11256714B1 (en) 2020-10-26 2022-02-22 Coupang Corp. Systems and methods for managing event storage

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100693710B1 (en) * 1999-12-23 2007-03-13 주식회사 케이티 The Method for data consistency between master and slave database
KR100671789B1 (en) * 2004-06-08 2007-01-22 주식회사 엘비에스플러스 Method for Synchronizing and Transmitting Data Between Distributed Spatial Data and System therefor
KR101046338B1 (en) * 2008-07-18 2011-07-05 (주)디에프아이비즈 Method of extracting change data through local database direct connection under global database
US11256714B1 (en) 2020-10-26 2022-02-22 Coupang Corp. Systems and methods for managing event storage
KR20220058836A (en) * 2020-10-26 2022-05-10 쿠팡 주식회사 Systems and methods for event storage management
US11822571B2 (en) 2020-10-26 2023-11-21 Coupang Corp. Systems and methods for managing event storage

Similar Documents

Publication Publication Date Title
US7206911B2 (en) Method, system, and program for a system architecture for an arbitrary number of backup components
US7593989B2 (en) Symbiotic computing system and method of operation therefor
US20050114285A1 (en) Data replication system and method
KR100471567B1 (en) Transaction Management Method For Data Synchronous In Dual System Environment
US8112481B2 (en) Document message state management engine
EP0992901B1 (en) Enhanced two phase commit protocol
CN101187888A (en) Method for coping database data in heterogeneous environment
US20030126133A1 (en) Database replication using application program event playback
US20040194112A1 (en) Entity linking system
US20230004576A1 (en) Data synchronization method and device for databases, and storage medium
JP2006523341A (en) Network-based communication system
JP2007518195A (en) Cluster database using remote data mirroring
CN112417042A (en) Method and device for processing service request
CN113065953B (en) Futures relay trading system based on distribution type
JPH09146812A (en) Data base device
JP3020539B2 (en) Parallel operation type database management method
KR20010039125A (en) Synchronization system of remote database by transaction transmission
JP2017097791A (en) Data processing device
JP2002244908A (en) Database synchronous control method and db system by the method
KR20210079053A (en) Apparatus for interfacing communication between legacy system for recruiting and platform of block_chain
KR20210082481A (en) Database management service providing system
US7533132B2 (en) Parallel replication mechanism for state information produced by serialized processing
CN113220730B (en) Service data processing system
KR102019565B1 (en) Data base management method
EP1244015B1 (en) Parallel replication mechanism for state information produced by serialized processing

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination