KR101140603B1 - Synchronization middleware system to perform data synchronization between client database and server database, and synchronization method between client database and server database - Google Patents

Synchronization middleware system to perform data synchronization between client database and server database, and synchronization method between client database and server database Download PDF

Info

Publication number
KR101140603B1
KR101140603B1 KR1020100106472A KR20100106472A KR101140603B1 KR 101140603 B1 KR101140603 B1 KR 101140603B1 KR 1020100106472 A KR1020100106472 A KR 1020100106472A KR 20100106472 A KR20100106472 A KR 20100106472A KR 101140603 B1 KR101140603 B1 KR 101140603B1
Authority
KR
South Korea
Prior art keywords
client
server
database
source
change
Prior art date
Application number
KR1020100106472A
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 KR1020100106472A priority Critical patent/KR101140603B1/en
Application granted granted Critical
Publication of KR101140603B1 publication Critical patent/KR101140603B1/en

Links

Images

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
    • G06F16/275Synchronous replication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

PURPOSE: A synchronization middleware system, client database, and a database synchronization method are provided to synchronize a database of a server and to minimize wireless network size. CONSTITUTION: A source mirror table(102) stores source table modification information of a server. A conversion managing module(103) outputs client table modification information which is transmitted from a client. A control managing module(105) controls the source table modification information based on a collision resolution policy and transmits source table reflection information to the source mirror table. The control managing module transmits the client table reflection information to a client table.

Description

클라이언트의 데이터베이스와 서버의 데이터베이스 간의 데이터 동기화를 위한 동기화 미들웨어 시스템, 및 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법{SYNCHRONIZATION MIDDLEWARE SYSTEM TO PERFORM DATA SYNCHRONIZATION BETWEEN CLIENT DATABASE AND SERVER DATABASE, AND SYNCHRONIZATION METHOD BETWEEN CLIENT DATABASE AND SERVER DATABASE}SYNCHRONIZATION MIDDLEWARE SYSTEM TO PERFORM DATA SYNCHRONIZATION BETWEEN CLIENT DATABASE AND SERVER DATABASE, AND SYNCHRONIZATION METHOD BETWEEN CLIENT DATABASE AND SERVER DATABASE}

본 발명은 클라이언트의 모바일 데이터베이스가 무선 네트워크 용량을 최소화하면서 서버측 데이터베이스와 동기화할 수 있도록 할 수 있는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 데이터 동기화를 위한 동기화 미들웨어, 및 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법에 관한 것이다.
The present invention provides a synchronization middleware for data synchronization between a client's database and a server's database that enables the client's mobile database to synchronize with a server-side database while minimizing wireless network capacity, and synchronization between the client's database and the server's database. Relates to how to do it.

모바일 데이터베이스(Database)는 주로 소형 무선 네트워크 환경에서 활용되는 휴대용 단말기에 탑재되는 경량형 데이터베이스를 의미하며, 서버측의 대용량 데이터 베이스와의 빈번한 동기화 작업 수행이 필수적이다.Mobile database refers to a lightweight database mounted in a portable terminal mainly used in a small wireless network environment, and frequent synchronization with a large database on the server side is essential.

일반적인 모바일 데이터베이스 응용의 경우 다수의 클라이언트가 서버측의 데이터베이스에서 발행(Publish)하는 특정 데이터 항목에 가입(Subscribe)하여 연산을 수행하다가 특정 시점에 무선 네트워크를 통해 정책에 기반한 동기화를 수행하므로, 다수의 클라이언트가 무선 네트워크 용량을 최소화하면서 효과적으로 서버측의 데이터베이스와 동기화할 수 있는 기법의 개발이 중요하다.In a typical mobile database application, a plurality of clients subscribe to a specific data item published from a server side database to perform an operation, and then perform a policy-based synchronization through a wireless network at a specific time. It is important to develop a technique that allows clients to effectively synchronize with server-side databases while minimizing wireless network capacity.

모바일 데이터베이스 활용 환경에서의 주요 문제점인 서버측의 대용량 데이터베이스와의 자료 불일치 문제를 해결하기 위해서 일반적으로 변경 시점을 표현하는 값인 타임 스탬프를 추가하거나, 클라이언트측에서 유지되고 있는 이전 값과의 비교 방법을 활용하여 서버측에 설정된 충돌 해결 정책에 의해 동기화한다. 하지만, 이를 기술적으로 구현하는 방법에 있어서 데이터베이스 응용의 특성을 고려하지 않을 경우에 동기화 요청(request)에 의해 전송되는 데이터량이 증가하므로 네트워크 부하가 커지는 문제점이 있다.
In order to solve data inconsistency with the large database on the server side, which is a major problem in the mobile database utilization environment, a time stamp, which is a value representing the change point, is generally added or compared with the previous value maintained on the client side. Synchronize by the conflict resolution policy set on the server side. However, there is a problem in that the network load increases because the amount of data transmitted by the synchronization request increases when a method of technically implementing the data is not taken into account.

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 클라이언트의 모바일 데이터베이스가 무선 네트워크 용량을 최소화하면서 서버의 데이터베이스와 동기화할 수 있도록 할 수 있는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 데이터 동기화를 위한 동기화 미들웨어, 및 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법을 제공하는 것이다.
SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object of the present invention is to synchronize data between a database of a client and a database of a server, which enables a client's mobile database to synchronize with a server's database while minimizing wireless network capacity. Synchronization middleware, and a method for performing synchronization between the database of the client and the database of the server.

상기와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 데이터 동기화를 위한 동기화 미들웨어는, 클라이언트로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 유지되는 클라이언트 미러 테이블; 서버의 소스 테이블 변경사항 요약정보가 유지되는 소스 미러 테이블; 상기 클라이언트로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 어떤 클라이언트로부터 전송된 것인지 구분한 후에 클라이언트 테이블 변경사항 요약정보를 출력하는 변환 관리 모듈; 상기 서버의 충돌 해결 정책을 조회하고 상기 변환 관리 모듈로부터 받은 클라이언트 테이블 변경사항 요약정보와 함께 출력하는 충돌해결 관리 모듈; 및 상기 클라이언트 테이블 변경사항 요약정보와 소스 테이블 변경사항 요약정보를 비교하여 상기 충돌 해결 정책에 의해 조정한 후에, 소스 테이블 반영정보를 생성하여 소스 테이블과 소스 미러 테이블로 전송하고, 클라이언트 테이블 반영정보를 생성하여 클라이언트 테이블로 전송하는 조정 관리 모듈; 를 포함하여 구성된다. 이때, 상기 클라이언트는 전송받은 클라이언트 테이블 반영정보를 클라이언트 테이블에 반영한 후에 최종 변경 데이터를 조정 관리 모듈로 전송하고, 상기 조정 관리 모듈은 전송받은 최종 변경 데이터를 클라이언트 미러 테이블, 소스 미러 테이블 및 소스 테이블에 반영한다.
According to a preferred embodiment of the present invention for achieving the above object, a synchronization middleware for data synchronization between a database of a client and a database of a server includes: a client mirror table in which client table change summary information transmitted from a client is maintained; A source mirror table in which source table change summary information of the server is maintained; A conversion management module for outputting client table change summary information after distinguishing from which client the client table change summary information transmitted from the client is transmitted; A conflict resolution management module for querying the conflict resolution policy of the server and outputting the summary information together with the client table changes received from the conversion management module; And comparing the client table change summary information with the source table change summary information and adjusting the conflict table according to the conflict resolution policy. Then, source table reflection information is generated and transmitted to the source table and the source mirror table. A coordination management module for generating and transmitting to the client table; . In this case, the client reflects the received client table reflection information to the client table and then transmits the final change data to the coordination management module, and the coordination management module transmits the received last change data to the client mirror table, the source mirror table, and the source table. Reflect.

상기와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법은, (a) 클라이언트로부터 전송되는 클라이언트 테이블 변경사항 요약정보를 전송받는 단계; (b) 상기 클라이언트로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 어떤 클라이언트로부터 전송된 것인지 구분한 후에 출력하는 단계; (c) 상기 서버의 충돌 해결 정책을 확인하고, 상기 클라이언트 테이블 변경사항 요약정보와 서버의 소스 테이블 변경사항 요약정보를 비교하여 상기 충돌 해결 정책에 의해 조정한 후에, 소스 테이블 반영정보를 생성하여 소스 테이블과 소스 미러 테이블로 전송하고, 클라이언트 테이블 반영정보를 생성하여 클라이언트 테이블로 전송하는 단계; 및 (d) 상기 클라이언트가 전송받은 클라이언트 테이블 반영정보를 클라이언트 테이블에 반영한 후에 최종 변경 데이터를 전송해오면, 전송받은 최종 변경 데이터를 클라이언트 미러 테이블, 소스 미러 테이블 및 소스 테이블에 반영하는 단계; 를 포함하여 수행된다. 이때, 상기 클라이언트 미러 테이블은 클라이언트로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 유지되며, 상기 소스 미러 테이블은 서버의 소스 테이블 변경사항 요약정보가 유지된다.
According to a preferred embodiment of the present invention, a method for performing synchronization between a database of a client and a database of a server includes: (a) receiving client table change summary information transmitted from a client; (b) classifying and outputting the client table change summary information transmitted from the client from which client; (c) checking the conflict resolution policy of the server, comparing the client table change summary information with the source table change summary information of the server and adjusting the conflict resolution policy, and then generating the source table reflection information to generate the source Transmitting to the table and the source mirror table, and generating the client table reflection information to the client table; And (d) reflecting the received final change data in the client mirror table, the source mirror table, and the source table when the client has transmitted the final change data after reflecting the received client table reflection information in the client table. It is carried out including. At this time, the client mirror table maintains the client table change summary information transmitted from the client, and the source mirror table maintains the source table change summary information of the server.

상기와 같은 구성 및 방법을 가지는 본 발명은, 클라이언트의 모바일 데이터베이스가 무선 네크워크 용량을 최소화하면서 서버의 데이터베이스와 동기화할 수 있는 효과가 있다.
The present invention having the above configuration and method has the effect that the mobile database of the client can synchronize with the database of the server while minimizing the wireless network capacity.

도 1은 본 발명의 바람직한 실시예에 따른 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 위한 동기화 미들웨어를 클라이언트 및 서버와 함께 도시한 블록도.
도 2는 도 1의 동기화 미들웨어가 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 1차 동기화를 수행하는 모습을 도시한 블록도.
도 3은 도 1의 동기화 미들웨어가 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 2차 동기화를 수행하는 모습을 도시한 블록도.
도 4는 본 발명의 바람직한 실시예에 따른 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법을 도시한 순서도.
1 is a block diagram illustrating a synchronization middleware with a client and a server for synchronization between a database of a client and a database of a server according to a preferred embodiment of the present invention.
FIG. 2 is a block diagram illustrating the synchronization middleware of FIG. 1 performing primary synchronization between a database of a client and a database of a server. FIG.
3 is a block diagram illustrating a second synchronization between a database of a client and a database of a server by the synchronization middleware of FIG. 1.
4 is a flow chart illustrating a method for performing synchronization between a database of a client and a database of a server according to a preferred embodiment of the present invention.

이하. 첨부한 도면을 참조하여 본 발명의 바람직한 실시예에 따른 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 데이터 동기화를 위한 동기화 미들웨어, 및 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법에 대하여 설명하면 다음과 같다.
Below. Referring to the accompanying drawings, a synchronization middleware for synchronizing data between a database of a client and a database of a server and a method of performing synchronization between a database of a client and a server according to an exemplary embodiment of the present invention will be described below. .

먼저, 본 발명의 바람직한 실시예에 따른 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 데이터 동기화를 위한 동기화 미들웨어에 대하여 설명한다.First, a synchronization middleware for data synchronization between a database of a client and a database of a server according to a preferred embodiment of the present invention will be described.

참고로, 도 1에는 본 발명의 바람직한 실시예에 따른 동기화 미들웨어를 클라이언트 및 서버와 함께 도시하였으며, 도 2에는 동기화 미들웨어가 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 1차 동기화(①~⑧)를 수행하는 모습을 도시하였고, 도 3에는 동기화 미들웨어가 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 2차 동기화(⑨~⑪)를 수행하는 모습을 도시하였다.For reference, FIG. 1 illustrates a synchronization middleware according to a preferred embodiment of the present invention together with a client and a server. In FIG. 2, the synchronization middleware performs a primary synchronization between the database of the client and the database of the server. In FIG. 3, the synchronization middleware performs a secondary synchronization (⑨ ~ ⑪) between the database of the client and the database of the server.

도 1을 참조하면, 본 발명의 바람직한 실시예에 따른 클라이언트(200)의 데이터베이스(201)와 서버(300)의 데이터베이스(301) 간의 데이터 동기화를 위한 동기화 미들웨어(100)는, 클라이언트(200)로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 유지되는 클라이언트 미러 테이블(101); 서버(300)의 소스 테이블 변경사항 요약정보가 유지되는 소스 미러 테이블(102); 상기 클라이언트(200)로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 어떤 클라이언트로부터 전송된 것인지 구분한 후에 클라이언트 테이블 변경사항 요약정보를 출력하는 변환 관리 모듈(103); 상기 서버(300)의 충돌 해결 정책을 조회하고 상기 변환 관리 모듈(103)로부터 받은 클라이언트 테이블 변경사항 요약정보와 함께 출력하는 충돌해결 관리 모듈(104); 및 상기 클라이언트 테이블 변경사항 요약정보와 소스 테이블 변경사항 요약정보를 비교하여 상기 충돌 해결 정책에 의해 조정한 후에, 소스 테이블 반영정보를 생성하여 소스 테이블(301a)과 소스 미러 테이블(102)로 전송하고, 클라이언트 테이블 반영정보를 생성하여 클라이언트 테이블(201a)로 전송하는 조정 관리 모듈(105); 을 포함하여 구성되며, 상기 클라이언트(200)는 전송받은 클라이언트 테이블 반영정보를 클라이언트 테이블(201a)에 반영한 후에 최종 변경 데이터를 조정 관리 모듈(105)로 전송하고, 상기 조정 관리 모듈(105)은 전송받은 최종 변경 데이터를 클라이언트 미러 테이블(101), 소스 미러 테이블(102) 및 소스 테이블(301a)에 반영하는 것을 특징으로 한다.Referring to FIG. 1, a synchronization middleware 100 for data synchronization between a database 201 of a client 200 and a database 301 of a server 300 according to a preferred embodiment of the present invention is provided from a client 200. A client mirror table 101 in which a summary of transmitted client table changes is maintained; A source mirror table 102 in which source table change summary information of the server 300 is maintained; A conversion management module 103 for outputting client table change summary information after distinguishing from which client the client table change summary information transmitted from the client 200 is transmitted; A conflict resolution management module (104) for querying the conflict resolution policy of the server (300) and outputting it together with summary information of client table changes received from the conversion management module (103); And after adjusting the client table change summary information with the source table change summary information and adjusting the conflict table according to the conflict resolution policy, generate the source table reflection information and transmit the generated source table reflection information to the source table 301a and the source mirror table 102. A coordination management module 105 for generating the client table reflection information and transmitting it to the client table 201a; The client 200 reflects the received client table reflection information in the client table 201a, and then transmits the final change data to the adjustment management module 105, and the adjustment management module 105 transmits the final change data. The received last change data is reflected in the client mirror table 101, the source mirror table 102 and the source table 301a.

이와 같은 구성을 가지는 본 발명에 따른 동기화 미들웨어(100)의 각 구성에 대하여 상세히 설명하면 다음과 같다.
Each configuration of the synchronization middleware 100 according to the present invention having such a configuration will be described in detail as follows.

도 1을 참조하면, 본 발명에 따른 동기화 미들웨어(100)는 클라이언트 미러 테이블(Client-morro Table, 101), 소스 미러 테이블(Source-mirror Table, 102), 변환 관리 모듈(Translator Mgr, 103), 충돌해결 관리 모듈(Conflict Mgr, 104), 조정 관리 모듈(Negotiator, 105), 입력 큐(Input Queue, 106) 및 출력 큐(Output Queue, 107)를 포함하여 구성된다. 그리고, 클라이언트(200)는 클라이언트 테이블(Client Table, 201a)을 구비하는 모바일 데이터베이스(201)를 포함하여 구성되고, 서버(300)는 소스 테이블(Source Table, 301a)을 구비하는 서버측 데이터베이스(=범용 디스크기반 DB, 301)를 포함하여 구성된다.Referring to FIG. 1, the synchronization middleware 100 according to the present invention includes a client mirror table 101, a source mirror table 102, a translator Mgr 103, Conflict resolution management module (Conflict Mgr, 104), coordination management module (Negotiator, 105), an input queue (Input Queue, 106) and an output queue (Output Queue, 107). The client 200 includes a mobile database 201 having a client table 201a, and the server 300 includes a server-side database having a source table 301a. General-purpose disk-based DB).

상기 동기화 미들웨어(100)의 클라이언트 미러 테이블(101)은 클라이언트(200)로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 유지된다.The client mirror table 101 of the synchronization middleware 100 maintains client table change summary information transmitted from the client 200.

상기 클라이언트(200)는 서버(300)의 소스 테이블(301) 중에 사용자 서비스에 필요한 데이터베이스를 복제하여 클라이언트 테이블(201a)을 구성하며, 상기 클라이언트 테이블(201a)은 변경 이전의 값을 저장하는 이전 값 테이블과, 상기 클라이언트 테이블 변경사항 요약정보를 저장하는 변경사항 요약정보 테이블과, 현재 서비스 중인 응용 프로그램이 사용하고 있는 현재의 값을 저장한 현재값 테이블을 구비하고 있는데, 서버(300)와의 데이터 동기화를 수행하고자 할 시에 먼저 클라이언트(200)는 상기 변경사항 요약정보 테이블에 저장된 클라이언트 테이블 변경사항 요약정보를 동기화 미들웨어(100)로 전송한다. 여기서, 상기 클라이언트(200)의 이전값 테이블은 현재 값 테이블과 동일한 형태를 유지하며 각 레코드의 변경시점별 타임스탬프를 유지하고 있으며, 상기 변경사항 요약정보 테이블은 클라이언트별로 할당된 아이디 풀에 의해 부여된 기본키를 유지하고 있는 기본키 데이터 필드와, 상기 기본키 데이터 필드를 제외한 나머지 데이터 필드 전체의 값을 해쉬 함수를 이용해 고정된 크기의 해쉬값으로 생성한 후에 조합하여 구성된다.The client 200 configures the client table 201a by replicating a database required for user service in the source table 301 of the server 300, and the client table 201a stores a previous value for storing a value before the change. A table, a change summary table for storing the client table change summary information, and a current value table for storing a current value used by an application program currently in service, and synchronizing data with the server 300. When attempting to perform the operation, the client 200 first transmits the client table change summary information stored in the change summary information table to the synchronization middleware 100. Here, the previous value table of the client 200 maintains the same form as the current value table and maintains a timestamp for each record change time point, and the change summary table is given by an ID pool assigned to each client. The primary key data field holding the primary key and the entire data field except for the primary key data field are generated by using a hash function to generate a hash value of a fixed size and then combine them.

상기 동기화 미들웨어(100)의 소스 미러 테이블(102)은 서버(300)의 소스 테이블 변경사항 요약정보가 유지된다.The source mirror table 102 of the synchronization middleware 100 maintains source table change summary information of the server 300.

상기 동기화 미들웨어(100)의 변환 관리 모듈(103)은 클라이언트(200)로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 어떤 클라이언트로부터 전송된 것인지 구분한 후에 클라이언트 테이블 변경사항 요약정보를 출력한다. 즉, 상기 변환 관리 모듈(103)은 클라이언트(200)로부터 전송된 클라이언트 테이블 변경사항 요약정보 중에 아이디값을 판단함으로써 어떤 원본 데이터베이스(Publication)에 가입(Subscribe)된 클라이언트의 데이터베이스의 변경사항 요약정보인지 구분하여(즉, 원본 데이터베이스 가입정보를 획득하여) 변경사항 요약정보를 충돌해결 관리 모듈(104)로 출력한다.The conversion management module 103 of the synchronization middleware 100 outputs the client table change summary information after distinguishing from which client the client table change summary information transmitted from the client 200 is transmitted. That is, the conversion management module 103 determines whether the change value of the database of the client subscribed to the source database by determining an ID value among the change information of the client table changes transmitted from the client 200. The change summary information is output to the conflict resolution management module 104 by dividing (that is, obtaining the original database subscription information).

상기 동기화 미들웨어(100)의 충돌해결 관리 모듈(104)은 서버(300)의 충돌 해결 정책(서버 우선, 클라이트 우선 및 사용자 우선 중에 하나)을 조회하고 상기 변환 관리 모듈(103)로부터 받은 클라이언트 테이블 변경사항 요약정보와 함께 조정 관리 모듈(105)로 출력한다.The conflict resolution management module 104 of the synchronization middleware 100 inquires a conflict resolution policy (one of the server priority, the crite priority, and the user priority) of the server 300 and receives the client table received from the conversion management module 103. Output to the coordination management module 105 with the change summary.

상기 동기화 미들웨어(100)의 조정 관리 모듈(105)은 상기 충돌 해결 정책, 원본 데이터베이스 가입정보, 레코드 기본키(아이디) 및 클라이언트 테이블 변경사항 요약정보를 통해 해당 원본 데이터베이스(즉, 소스 테이블)의 동일한 기본키(아이디)를 가지는 레코드를 추출하여 소스 테이블 변경사항 요약정보를 생성하고, 상기 클라이언트 테이블 변경사항 요약정보와 서버의 소스 테이블 변경사항 요약정보를 비교하여 충돌 해결 정책에 의해 조정한 후에, 소스 테이블 반영정보(ST 반영정보)를 생성하여 소스 테이블(301a)과 소스 미러 테이블(102)로 전송하고, 클라이언트 테이블 반영 정보(CT 반영정보)를 생성하여 클라이언트 (200)에 전송한다. 이후에, 상기 클라이언트(200)가 상기 클라이언트 테이블 반영정보(CT 반영정보)를 클라이언트 테이블(201a)에 반영한 후에 서버(300)측으로 전송할 레코드의 실제값을 추출하여 생성한 최종 변경 데이터를 동기화 미들웨어(100)로 전송해오면, 동기화 미들웨어(100)의 변환 관리 모듈(103)은 전송받은 최종 변경 데이터를 클라이언트 미러 테이블(101), 소스 미러 테이블(102) 및 소스 테이블(301a)에 반영한다.The coordination management module 105 of the synchronization middleware 100 uses the conflict resolution policy, source database subscription information, record primary key (ID), and client table change summary information to identify the same source database (ie, source table). After extracting the record with the primary key (ID) to generate the source table change summary information, compare the client table change summary information with the server source table change summary information and adjust it according to the conflict resolution policy. The table reflection information (ST reflection information) is generated and transmitted to the source table 301a and the source mirror table 102, and the client table reflection information (CT reflection information) is generated and transmitted to the client 200. Thereafter, the client 200 reflects the client table reflection information (CT reflection information) in the client table 201a, and extracts the actual value of the record to be transmitted to the server 300 to synchronize the final change data. 100, the conversion management module 103 of the synchronization middleware 100 reflects the received last change data to the client mirror table 101, the source mirror table 102, and the source table 301a.

여기서, 상기 조정 관리 모듈(105)은 상기와 같이 상기 클라이언트 테이블 변경사항 요약정보와 소스 테이블 변경사항 요약정보를 비교한 결과, 클라이언트 테이블(201a)의 변경사항이 서버(300)의 소스 테이블(301a)에 반영되어야할 경우(즉, 레코드의 삭제)에 소스 테이블 반영 정보(ST 반영 정보)를 생성한다. 또한, 상기 조정 관리 모듈(105)은 클라이언트 테이블 변경사항 요약정보와 서버(300)의 소스 테이블 변경사항 요약정보를 비교하여, 서버(300)측으로 해당 레코드의 실제값을 전송해야 하는지, 서버(300)측 레코드의 값을 클라이언트 테이블(201a)에 반영하는지, 해당 레코드를 삭제해야 하는지에 대한 정보를 포함하는 클라이언트 테이블 반영정보(CT 반영정보)를 생성한다.
Here, the coordination management module 105 compares the client table change summary information with the source table change summary information as described above, and as a result, the change of the client table 201a is changed to the source table 301a of the server 300. ), The source table reflection information (ST reflection information) is generated when it is to be reflected (ie, deletion of a record). In addition, the coordination management module 105 compares the client table change summary information with the source table change summary information of the server 300, and transmits the actual value of the corresponding record to the server 300. The client table reflecting information (CT reflecting information) including information on whether the value of the side record is reflected in the client table 201a or whether the corresponding record should be deleted is generated.

이하, 본 발명의 바람직한 실시예에 따른 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 데이터 동기화를 수행하는 방법에 대하여 설명한다.Hereinafter, a method of synchronizing data between a database of a client and a database of a server according to an exemplary embodiment of the present invention will be described.

먼저, 본 발명에 따른 동기화 미들웨어(100)는 클라이언트(200)로부터 전송되는 클라이언트 테이블 변경사항 요약정보를 전송받아서 입력 큐(Input Queue, 106)에 적재한다.(S101)First, the synchronization middleware 100 according to the present invention receives the client table change summary information transmitted from the client 200 and loads it into the input queue 106 (S101).

다음으로, 상기 동기화 미들웨어(100)의 변환 관리 모듈(103)은 클라이언트(200)로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 어떤 클라이언트로부터 전송된 것인지 구분한 후에 출력한다. 즉, 상기 변환 관리 모듈(103)은 클라이언트(200)로부터 전송된 클라이언트 테이블 변경사항 요약정보 중에 아이디값을 판단함으로써 어떤 원본 데이터베이스(Publication)에 가입(Subscribe)된 클라이언트의 데이터베이스의 변경사항 요약정보인지 구분하여(즉, 원본 데이터베이스 가입정보를 획득하여) 충돌해결 관리 모듈(104)로 출력한다.Next, the conversion management module 103 of the synchronization middleware 100 outputs after distinguishing from which client the client table change summary information transmitted from the client 200 is transmitted. That is, the conversion management module 103 determines whether the change value of the database of the client subscribed to the source database by determining an ID value among the change information of the client table changes transmitted from the client 200. Separately (that is, by obtaining the original database subscription information) and outputs to the conflict resolution management module 104.

다음으로, 상기 동기화 미들웨어(100)의 충돌해결 관리 모듈(104)은 서버(300)의 충돌 해결 정책(서버 우선, 클라이트 우선 및 사용자 우선 중에 하나)을 확인하여 클라이언트 테이블 요약정보와 함께 조정 관리 모듈(105)로 출력한다.(S102)Next, the conflict resolution management module 104 of the synchronization middleware 100 checks the conflict resolution policy of the server 300 (one of the server priority, the crite priority, and the user priority) and manages coordination with the client table summary information. Output to module 105. (S102)

다음으로, 상기 동기화 미들웨어(100)의 조정 관리 모듈(105)은 상기 충돌 해결 정책, 원본 데이터베이스 가입정보, 레코드 기본키(아이디) 및 클라이언트 테이블 변경사항 요약정보를 통해 해당 원본 데이터베이스(즉, 소스 테이블)의 동일한 기본키(아이디)를 가지는 레코드를 추출하여 소스 테이블 변경사항 요약정보를 생성한 후에, 상기 클라이언트 테이블 변경사항 요약정보와 서버의 소스 테이블 변경사항 요약정보를 비교하여 충돌 해결 정책에 의해 조정한 후에, 소스 테이블 반영정보(ST 반영정보)를 생성하여 소스 테이블(301a)과 소스 미러 테이블(102)로 전송하고, 클라이언트 테이블 반영정보(CT 반영정보)를 생성하여 출력 큐(Output Queue)에 적재한 후에 클라이언트 테이블(201a)로 전송한다.(S103, S104, S105)Next, the coordination management module 105 of the synchronization middleware 100 uses the conflict resolution policy, the source database subscription information, the record primary key (ID), and the client table change summary information to determine the corresponding source database (ie, source table). After extracting records with the same primary key (ID) to generate source table change summary information, the client table change summary information and the source table change summary information of the server are compared and adjusted by the conflict resolution policy. After that, the source table reflection information (ST reflection information) is generated and transmitted to the source table 301a and the source mirror table 102, and the client table reflection information (CT reflection information) is generated to the output queue. After loading, the data is transmitted to the client table 201a. (S103, S104, S105)

이때, 상기 클라이언트 테이블 변경사항 요약정보와 소스 테이블 변경사항 요약정보를 비교한 결과, 클라이언트 테이블(201a)의 변경사항이 서버(300)의 소스 테이블(301a)에 반영되어야할 경우(즉, 레코드의 삭제)에, 소스 테이블 반영정보(ST 반영정보)를 생성한다. 또한, 상기 클라이언트 테이블 변경사항 요약정보와 서버의 소스테이블 변경사항 요약정보를 비교하여, 서버(300)측으로 해당 레코드의 실제값을 전송해야 하는지, 서버(300)측 레코드의 값을 클라이언트(200)에 반영하는지, 해당 레코드를 삭제해야 하는지에 대한 정보를 포함하는 클라이언트 테이블 반영정보(CT 반영정보)를 생성한다.In this case, as a result of comparing the client table change summary information with the source table change summary information, when the change of the client table 201a is to be reflected in the source table 301a of the server 300 (that is, the Source table reflection information (ST reflection information) is generated. In addition, the client table change summary information and the source table change summary information of the server are compared, and whether the actual value of the corresponding record should be transmitted to the server 300 or not, and the value of the record of the server 300 side is determined by the client 200. The client table reflecting information (CT reflecting information) including information about whether to reflect the information or to delete the corresponding record is generated.

다음으로, 상기 클라이언트 테이블 반영정보를 전송받은 클라이언트(200)가 클라이언트 테이블 반영정보를 클라이언트 테이블(201a)에 반영한 후에 서버(300)측으로 전송할 레코드의 실제값을 추출하여 생성한 최종 변경 데이터를 동기화 미들웨어(100)로 전송해오면, 동기화 미들웨어(100)는 전송받은 최종 변경 데이터를 입력 큐(Input Queue, 106)에 적재한 후에 클라이언트 미러 테이블(101), 소스 미러 테이블(102) 및 소스 테이블(301a)에 반영한다.(S106, S107, S108)
Next, after receiving the client table reflection information, the client 200 reflects the client table reflection information in the client table 201a, and extracts the actual value of the record to be transmitted to the server 300 to synchronize the final change data. When transmitting to (100), the synchronization middleware (100) loads the last change data received in the input queue (Input Queue, 106), and then the client mirror table 101, source mirror table 102 and source table (301a) (S106, S107, S108)

한편, 상술한 본 발명의 실시예는 컴퓨터에서 실행될 수 있는 프로그램으로 달성 가능하고, 컴퓨터로 읽을 수 있는 기록 매체를 이용하여 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 컴퓨터로 읽을 수 있는 기록 매체는 마그네틱 저장 매체(예 : ROM, 플로피 디스트, 하드 디스크, 자기 테이트 등), 광학적 판독 매체(예 : CD-ROM, DVD, 광데이터 저장 장치 등)와 같은 저장 매체를 포함한다.
On the other hand, the embodiments of the present invention described above can be achieved by a computer executable program, and can be implemented in a general-purpose digital computer operating a program using a computer-readable recording medium. Computer-readable recording media include storage media such as magnetic storage media (such as ROM, floppy disks, hard disks, magnetic data, etc.) and optical reading media (such as CD-ROMs, DVDs, optical data storage devices, etc.). Include.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.
The above description is merely illustrative of the technical idea of the present invention, and various modifications, changes, and substitutions may be made by those skilled in the art without departing from the essential characteristics of the present invention. will be. Accordingly, the embodiments disclosed in the present invention and the accompanying drawings are not intended to limit the technical spirit of the present invention but to describe the present invention, and the scope of the technical idea of the present invention is not limited by the embodiments and the accompanying drawings. . The protection scope of the present invention should be interpreted 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.

100 : 동기화 미들웨어 101 : 클라이언트 미러 테이블
102 : 소스 미러 테이블 103 : 변환 관리 모듈
104 : 충돌해결 관리 모듈 105 : 조정 관리 모듈
106 : 입력 큐 107 : 출력 큐
200 : 클라이언트 201 : 모바일 데이터베이스
202 : 클라이언트 테이블 300 : 서버
301 : 서버측 데이터베이스 302 : 소스 테이블
100: Synchronization Middleware 101: Client Mirror Tables
102: source mirror table 103: conversion management module
104: conflict resolution management module 105: mediation management module
106: input queue 107: output queue
200: client 201: mobile database
202: client table 300: server
301: server-side database 302: source table

Claims (16)

(a) 클라이언트로부터 전송되는 클라이언트 테이블 변경사항 요약정보를 전송받는 단계;
(b) 상기 클라이언트로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 어떤 클라이언트로부터 전송된 것인지 구분한 후에 출력하는 단계;
(c) 서버의 충돌 해결 정책을 확인하고, 상기 클라이언트 테이블 변경사항 요약정보와 서버의 소스 테이블 변경사항 요약정보를 비교하여 상기 충돌 해결 정책에 의해 조정한 후에, 소스 테이블 반영정보를 생성하여 소스 테이블과 소스 미러 테이블로 전송하고, 클라이언트 테이블 반영정보를 생성하여 클라이언트 테이블로 전송하는 단계; 및
(d) 상기 클라이언트가 전송받은 클라이언트 테이블 반영정보를 클라이언트 테이블에 반영한 후에 최종 변경 데이터를 전송해오면, 전송받은 최종 변경 데이터를 클라이언트 미러 테이블, 소스 미러 테이블 및 소스 테이블에 반영하는 단계;
를 포함하며, 상기 클라이언트 미러 테이블은 클라이언트로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 유지되며, 상기 소스 미러 테이블은 서버의 소스 테이블 변경사항 요약정보가 유지되는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법.
(a) receiving client table change summary information transmitted from the client;
(b) classifying and outputting the client table change summary information transmitted from the client from which client;
(c) checking the conflict resolution policy of the server, comparing the client table change summary information with the source table change summary information of the server, and adjusting them according to the conflict resolution policy, and then generating the source table reflection information to generate the source table. Transmitting to the source mirror table, generating the client table reflection information, and transmitting the generated information to the client table; And
(d) reflecting the received final change data to the client mirror table, the source mirror table, and the source table when the client has transmitted the final change data after reflecting the received client table reflection information in the client table;
Wherein the client mirror table maintains client table change summary information transmitted from a client, and the source mirror table maintains source table change summary information of a server. How to perform synchronization between them.
제 1 항에 있어서, 상기 클라이언트 테이블은 서버 테이블 중에 사용자 서비스에 필요한 데이터베이스를 복제하여 구성되며, 상기 클라이언트 테이블은,
변경 이전의 값을 저장하는 이전 값 테이블;
상기 클라이언트 테이블 변경사항 요약정보를 저장하는 변경사항 요약정보 테이블; 및
현재 서비스 중인 응용 프로그램이 사용하고 있는 현재의 값을 저장한 현재 값 테이블;
을 포함하는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법.
The method of claim 1, wherein the client table is configured by replicating a database required for user services in the server table, the client table,
A previous value table for storing values before the change;
A change summary table for storing the client table change summary information; And
A current value table that stores the current values being used by the currently serviced application;
Method of performing a synchronization between the database of the client and the database of the server comprising a.
제 2 항에 있어서, 상기 이전 값 테이블은 현재 값 테이블과 동일한 형태를 유지하며 각 레코드의 변경시점별 타임스탬프를 유지하고 있는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법.3. The method of claim 2, wherein the previous value table maintains the same form as the current value table and maintains a timestamp for each record change point. 제 2 항에 있어서, 상기 변경사항 요약정보 테이블은 클라이언트별로 할당된 아이디 풀에 의해 부여된 기본키를 유지하고 있는 기본키 데이터 필드와, 상기 기본키 데이터 필드를 제외한 나머지 데이터 필드 전체의 값을 해쉬 함수를 이용해 고정된 크기의 해쉬값으로 생성한 후에 조합하여 구성되는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법.The method of claim 2, wherein the change summary table hashes the values of the primary key data field holding the primary key assigned by the ID pool assigned to each client and the entire data field except the primary key data field. A method for synchronizing between a database of a client and a database of a server, characterized in that a combination is generated by generating a hash value having a fixed size using a function. 제 1 항에 있어서, 상기 (c)단계에서, 상기 클라이언트 테이블 변경사항 요약정보와 서버의 소스 테이블 변경사항 요약정보를 비교한 결과, 클라이언트 테이블의 변경사항이 서버의 소스 테이블에 반영되어야할 경우에, 소스 테이블 반영정보를 생성하는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법.The method of claim 1, wherein in the step (c), when the client table change summary information is compared with the source table change summary information of the server, the change of the client table is to be reflected in the source table of the server. And synchronizing the database of the client and the database of the server, characterized by generating source table reflection information. 제 1 항에 있어서, 상기 (c)단계에서, 상기 클라이언트 테이블 변경사항 요약정보와 서버의 소스 테이블 변경사항 요약정보를 비교하여, 서버측으로 해당 레코드의 실제값을 전송해야 하는지, 서버측 레코드의 값을 클라이언트 테이블에 반영하는지, 해당 레코드를 삭제해야 하는지에 대한 정보를 포함하는 클라이언트 테이블 반영정보를 생성하는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법.The method of claim 1, wherein in the step (c), the client table change summary information is compared with the source table change summary information of the server, and the actual value of the corresponding record should be transmitted to the server. Generating client table reflection information including information on whether the information is reflected in the client table or whether the corresponding record should be deleted. 제 1 항에 있어서, 상기 최종 변경 데이터는 상기 클라이언트가 서버측으로 전송할 레코드의 실제값을 추출하여 생성하는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 수행하는 방법.The method of claim 1, wherein the final change data is generated by extracting an actual value of a record to be transmitted to the server by the client. 클라이언트로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 유지되는 클라이언트 미러 테이블;
서버의 소스 테이블 변경사항 요약정보가 유지되는 소스 미러 테이블;
상기 클라이언트로부터 전송되는 클라이언트 테이블 변경사항 요약정보가 어떤 클라이언트로부터 전송된 것인지 구분한 후에 클라이언트 테이블 변경사항 요약정보를 출력하는 변환 관리 모듈;
상기 서버의 충돌 해결 정책을 조회하고 상기 변환 관리 모듈로부터 받은 클라이언트 테이블 변경사항 요약정보와 함께 출력하는 충돌해결 관리 모듈; 및
상기 클라이언트 테이블 변경사항 요약정보와 소스 테이블 변경사항 요약정보를 비교하여 상기 충돌 해결 정책에 의해 조정한 후에, 소스 테이블 반영정보를 생성하여 소스 테이블과 소스 미러 테이블로 전송하고, 클라이언트 테이블 반영정보를 생성하여 클라이언트 테이블로 전송하는 조정 관리 모듈;
를 포함하여 구성되며, 상기 클라이언트는 전송받은 클라이언트 테이블 반영정보를 클라이언트 테이블에 반영한 후에 최종 변경 데이터를 변환 관리 모듈로 전송하고, 상기 변환 관리 모듈은 전송받은 최종 변경 데이터를 클라이언트 미러 테이블, 소스 미러 테이블 및 소스 테이블에 반영하는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 데이터 동기화를 위한 동기화 미들웨어 시스템.
A client mirror table that maintains client table change summary information sent from the client;
A source mirror table in which source table change summary information of the server is maintained;
A conversion management module for outputting client table change summary information after distinguishing from which client the client table change summary information transmitted from the client is transmitted;
A conflict resolution management module for querying the conflict resolution policy of the server and outputting the summary information together with the client table changes received from the conversion management module; And
After comparing the client table change summary information with the source table change summary information and adjusting the conflict table according to the conflict resolution policy, the source table reflection information is generated and transmitted to the source table and the source mirror table, and the client table reflection information is generated. A coordination management module for transmitting to the client table;
And the client reflects the received client table reflection information to the client table and then transmits the final change data to the conversion management module, and the conversion management module transmits the received final change data to the client mirror table and the source mirror table. And a synchronization middleware system for synchronizing data between the database of the client and the database of the server.
제 8 항에 있어서, 상기 클라이언트 테이블은 서버 테이블 중에 사용자 서비스에 필요한 데이터베이스를 복제하여 구성되며, 상기 클라이언트 테이블은,
변경 이전의 값을 저장하는 이전 값 테이블;
상기 클라이언트 테이블 변경사항 요약정보를 저장하는 변경사항 요약정보 테이블; 및
현재 서비스 중인 응용 프로그램이 사용하고 있는 현재의 값을 저장한 현재 값 테이블;
을 포함하는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 데이터 동기화를 위한 동기화 미들웨어 시스템.
The method of claim 8, wherein the client table is configured by replicating a database required for user services in the server table, the client table,
A previous value table for storing values before the change;
A change summary table for storing the client table change summary information; And
A current value table that stores the current values being used by the currently serviced application;
Synchronization middleware system for data synchronization between the database of the client and the database of the server comprising a.
제 9 항에 있어서, 상기 이전 값 테이블은 현재 값 테이블과 동일한 형태를 유지하며 각 레코드의 변경시점별 타임스탬프를 유지하고 있는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 위한 동기화 미들웨어 시스템.10. The synchronization middleware system of claim 9, wherein the previous value table maintains the same form as the current value table and maintains a timestamp for each record change point. . 제 9 항에 있어서, 상기 변경사항 요약정보 테이블은 클라이언트별로 할당된 아이디 풀에 의해 부여된 기본키를 유지하고 있는 기본키 데이터 필드와, 상기 기본키 데이터 필드를 제외한 나머지 데이터 필드 전체의 값을 해쉬 함수를 이용해 고정된 크기의 해쉬값으로 생성한 후에 조합하여 구성되는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 위한 동기화 미들웨어 시스템.10. The system according to claim 9, wherein the change summary table hashes the values of the primary key data field holding the primary key assigned by the ID pool assigned for each client and all data fields except the primary key data field. Synchronization middleware system for synchronizing between the database of the client and the database of the server, characterized in that the combination after generating a fixed size hash value using a function. 제 8 항에 있어서, 상기 조정 관리모듈은 상기 클라이언트 테이블 변경사항 요약정보와 서버의 소스 테이블 변경사항 요약정보를 비교한 결과, 클라이언트 테이블의 변경사항이 서버의 소스 테이블에 반영되어야할 경우에, 소스 테이블 반영정보를 생성하는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 위한 동기화 미들웨어 시스템.The method of claim 8, wherein the coordination management module compares the client table change summary information with the source table change summary information of the server, and when the change of the client table is to be reflected in the source table of the server, Synchronization middleware system for synchronization between the database of the client and the database of the server, characterized in that for generating the table reflection information. 제 8 항에 있어서, 상기 조정 관리모듈은 상기 클라이언트 테이블 변경사항 요약정보와 서버의 소스 테이블 변경사항 요약정보를 비교하여, 서버측으로 해당 레코드의 실제값을 전송해야 하는지, 서버측 레코드의 값을 클라이언트에 반영하는지, 해당 레코드를 삭제해야 하는지에 대한 정보를 포함하는 클라이언트 테이블 반영정보를 생성하는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 위한 동기화 미들웨어 시스템.10. The method of claim 8, wherein the coordination management module compares the client table change summary information with the source table change summary information of the server, and transmits the actual value of the corresponding record to the server. Synchronization middleware system for synchronizing between the database of the client and the database of the server, characterized in that for generating a client table reflecting information including information on whether to reflect or delete the record. 제 8 항에 있어서, 상기 최종 변경 데이터는 상기 클라이언트가 서버측으로 전송할 레코드의 실제값을 추출하여 생성하는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 위한 동기화 미들웨어 시스템.9. The synchronization middleware system of claim 8, wherein the final change data is generated by extracting an actual value of a record to be transmitted to the server by the client. 제 8 항에 있어서, 클라이언트로부터 전송받은 변경사항 요약 정보 및 최종 변경 데이터를 수신 순서대로 적재하는 입력 큐(Input Queue); 및
클라이언트로 전송하는 클라이언트 테이블 반영정보를 순서대로 적재하는 출력 큐(Output Queue)를 추가로 구비하는 것을 특징으로 하는 클라이언트의 데이터베이스와 서버의 데이터베이스 간의 동기화를 위한 동기화 미들웨어 시스템.
The apparatus of claim 8, further comprising: an input queue configured to load the change summary information and the final change data received from the client in order of reception; And
A synchronization middleware system for synchronizing between a database of a client and a database of a server, further comprising an output queue that sequentially loads client table reflection information transmitted to the client.
컴퓨터로 판독 가능한 기록 매체에 있어서, 제 1 항 내지 제 7 항 중 어느 한 항에 따른 방법을 구현하는 프로그램이 기록되는 기록 매체.A computer-readable recording medium, wherein a program for implementing a method according to any one of claims 1 to 7 is recorded.
KR1020100106472A 2010-10-29 2010-10-29 Synchronization middleware system to perform data synchronization between client database and server database, and synchronization method between client database and server database KR101140603B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100106472A KR101140603B1 (en) 2010-10-29 2010-10-29 Synchronization middleware system to perform data synchronization between client database and server database, and synchronization method between client database and server database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100106472A KR101140603B1 (en) 2010-10-29 2010-10-29 Synchronization middleware system to perform data synchronization between client database and server database, and synchronization method between client database and server database

Publications (1)

Publication Number Publication Date
KR101140603B1 true KR101140603B1 (en) 2012-05-02

Family

ID=46271227

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100106472A KR101140603B1 (en) 2010-10-29 2010-10-29 Synchronization middleware system to perform data synchronization between client database and server database, and synchronization method between client database and server database

Country Status (1)

Country Link
KR (1) KR101140603B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101927261B1 (en) * 2018-06-12 2018-12-10 주식회사 사이버다임 Apparatus and method for resolving data conflict
CN115086163A (en) * 2021-03-15 2022-09-20 中国移动通信集团福建有限公司 PON port configuration migration method and device
CN116506449A (en) * 2023-06-26 2023-07-28 新亿成科技(江苏)有限公司 Communication network node information synchronization method, system, equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050223047A1 (en) 2003-08-21 2005-10-06 Microsoft Corporation Systems and methods for synchronizing computer systems through an intermediary file system share or device
US20070190978A1 (en) 2005-01-13 2007-08-16 Ianywhere Solutions, Inc. System and Methodology for Extending Enterprise Messaging Systems to Mobile Devices
KR20070120663A (en) * 2006-06-20 2007-12-26 계명대학교 산학협력단 Gateway system for data synchronization
KR20100067976A (en) * 2008-12-12 2010-06-22 주식회사 케이티 Method for synchronizing contents files stored separately

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050223047A1 (en) 2003-08-21 2005-10-06 Microsoft Corporation Systems and methods for synchronizing computer systems through an intermediary file system share or device
US20070190978A1 (en) 2005-01-13 2007-08-16 Ianywhere Solutions, Inc. System and Methodology for Extending Enterprise Messaging Systems to Mobile Devices
KR20070120663A (en) * 2006-06-20 2007-12-26 계명대학교 산학협력단 Gateway system for data synchronization
KR20100067976A (en) * 2008-12-12 2010-06-22 주식회사 케이티 Method for synchronizing contents files stored separately

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101927261B1 (en) * 2018-06-12 2018-12-10 주식회사 사이버다임 Apparatus and method for resolving data conflict
CN115086163A (en) * 2021-03-15 2022-09-20 中国移动通信集团福建有限公司 PON port configuration migration method and device
CN115086163B (en) * 2021-03-15 2024-04-09 中国移动通信集团福建有限公司 PON port configuration migration method and device
CN116506449A (en) * 2023-06-26 2023-07-28 新亿成科技(江苏)有限公司 Communication network node information synchronization method, system, equipment and storage medium
CN116506449B (en) * 2023-06-26 2023-09-26 新亿成科技(江苏)有限公司 Communication network node information synchronization method, system, equipment and storage medium

Similar Documents

Publication Publication Date Title
US10079789B2 (en) Shared attachments
US10482067B2 (en) Synchronization of shared folders and files
US7716479B2 (en) Dynamically resolving recipients to retrieve public keys during send/receive
KR102164457B1 (en) Electronic device for multiple radio access and method thereof
US9465819B2 (en) Distributed database
US10102389B2 (en) Access permissions management system and method
US20140012813A1 (en) Method and apparatus for synchronizing personal information
US8682954B2 (en) Replication in a network environment
EP4231167A1 (en) Data storage method and apparatus based on blockchain network
KR101140603B1 (en) Synchronization middleware system to perform data synchronization between client database and server database, and synchronization method between client database and server database
JP5775359B2 (en) System management server, management method and program
KR20090003405A (en) File upload system and method
JP2011123610A (en) System and method for managing document, and program
KR101823130B1 (en) Technique for replication of database
KR20160026138A (en) Rapid sync method for cloud file system and cloud file system using the same
CN112800066A (en) Index management method, related device and storage medium
US11567922B2 (en) Method and system for using external content type object types
WO2022089321A1 (en) Method and apparatus for scheduling access point, and server and storage medium
US20180285826A1 (en) Workplace file management system, workplace file management method, and program
CN107526530B (en) Data processing method and device
US20130218851A1 (en) Storage system, data management device, method and program
US9742832B2 (en) Transmission apparatus, transmission method, computer-readable storage medium storing transmission program, and relay system
US20120023074A1 (en) Scalable rule-based data synchronization systems and methods
KR20100137756A (en) Apparatus and method for providing group address book service in communication network
US10938701B2 (en) Efficient heartbeat with remote servers by NAS cluster nodes

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150306

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160325

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170313

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180306

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190328

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20200312

Year of fee payment: 9