KR100561229B1 - 데이터베이스 이중화 장치 및 그 방법 - Google Patents

데이터베이스 이중화 장치 및 그 방법 Download PDF

Info

Publication number
KR100561229B1
KR100561229B1 KR20030095634A KR20030095634A KR100561229B1 KR 100561229 B1 KR100561229 B1 KR 100561229B1 KR 20030095634 A KR20030095634 A KR 20030095634A KR 20030095634 A KR20030095634 A KR 20030095634A KR 100561229 B1 KR100561229 B1 KR 100561229B1
Authority
KR
South Korea
Prior art keywords
replication
server
database
change
source
Prior art date
Application number
KR20030095634A
Other languages
English (en)
Other versions
KR20050064278A (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 KR20030095634A priority Critical patent/KR100561229B1/ko
Publication of KR20050064278A publication Critical patent/KR20050064278A/ko
Application granted granted Critical
Publication of KR100561229B1 publication Critical patent/KR100561229B1/ko

Links

Images

Landscapes

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

Abstract

본 발명은 복수개의 원본 데이터베이스들과 복수개의 복제 데이터베이스들이 이중화 관계를 형성하여 분산된 데이터를 통해 서비스의 가용성 및 확장성을 높이는 것으로, 이와 같은 본 발명의 목적을 달성하기 위한 데이터베이스 이중화 장치는 원본 서버에 저장된 데이터베이스를 네트워크를 통하여 물리적으로 상이한 복제 서버의 데이터베이스로 복제하는 컴퓨터 시스템에 있어서, 다수의 원본 서버들의 원본 테이블들에 저장된 데이터들의 일관성을 유지하면서 다수의 복제 서버의 복제 테이블들에 복제하는 것을 특징으로 한다.
데이터베이스 이중화, 다중 서버, 데이터 동기화

Description

데이터베이스 이중화 장치 및 그 방법{APPARATUS FOR DUPLICATING DATABASE AND DUPLICATING METHOD THEREFOR}
도 1은 일반적인 데이터베이스 이중화 시스템들이 제공하는 데이터베이스 이중화 구조도.
도 2는 본 발명의 실시예에 따른 데이터베이스 이중화 장치의 구성도.
도 3은 도 2에서의 다수의 원본 서버와 하나의 복제 서버의 데이터베이스 이중화 장치의 구성도.
도 4는 도 3에서의 다수의 원본 서버들로부터 하나 이상의 복제 서버의 단일 테이블로 데이터베이스를 객체 매핑 테이블을 이용하여 복제하고 관리하는 데이터베이스 이중화 장치의 구성도.
도 5는 도 3에서의 원본 서버의 복제 대상 테이블에 대한 상태 천이도.
도 6은 본 발명의 실시예에 따른 복제 테이블 등록에 대한 원본 서버의 동작 흐름도.
도 7은 본 발명의 실시예에 따른 복제 테이블 해제에 대한 원본 서버의 동작 흐름도.
도 8은 본 발명의 실시예에 따른 복제 테이블 해제에 대한 복제 서버의 동작 흐름도.
도 9는 본 발명의 실시예에 따른 데이터 복제를 수행하는 원본 서버의 동작 흐름도.
도 10은 본 발명의 실시예에 따른 데이터 복제를 수행하는 복제 서버의 동작 흐름도.
본 발명은 M : N 구조를 지원하는 다중서버 데이터베이스 이중화 장치 및 그 방법에 관한 것으로, 특히 다수의 원본 데이터베이스들와 다수의 복제 데이터베이스들이 이중화 관계를 형성하도록 하는 데이터베이스 이중화 장치 및 그 방법에 관한 것이다.
현재, 인터넷의 광범위한 확산과 함께 인터넷을 이용한 서비스에 대한 요구가 계속해서 기하 급수적으로 증가하고 있는 추세이며, 이러한 인터넷 서비스는 시간적, 공간적 제약을 받지 않고 사용자의 거주지 또는 다양한 생활공간에서 요구되는 특성을 가지고 있다. 그러나, 사용자가 요청을 할 때마다 집중된 중앙 서버에서 모든 요청을 처리하는 구조에서는 시스템 성능 감소를 초래할 뿐만 아니라, 결과적으로 사용자에 대한 서비스의 질적 절하를 가져오게 되어 다양한 사용자의 요구를 충족하기에 적합하지 않다.
이를 해결하기 위한 방법으로 데이터베이스 이중화 기술이 연구되고 있다. 데이터베이스 이중화는 중앙 서버에서 관리하는 데이터의 일부를 각 지역의 복제 서버들에 복사하여두고, 사용자의 검색 요청이 발생할 경우 중앙 서버를 거치지 않고 각 복제 서버에서 독립적으로 처리하는 방식이다. 이렇게 함으로써 중앙 서버로 집중되던 사용자의 요청을 각 지역별로 분산하여 보다 빠른 서비스를 제공하고, 계획되지 않은 고장에 의해 중앙 서버가 다운이 되더라도 각 복제 서버에 저장된 데이터베이스를 이용하여 지속적인 서비스를 함으로써 중단 없는 서비스를 제공할 수 있다.
이러한 데이터베이스 이중화 기술에 대해 종래에 응용되던 구조를 도 1를 참조하여 상세히 설명하기로 한다.
도 1에 도시된 바와 같이, 원본 서버(110)와 복제 서버(120) 사이에 이중화 관계를 이루어 원본 데이터베이스(111)에 변경이 발생하면, 복제 데이터베이스(121)에 변경사항을 반영하여 서로 상이한 두 서버간 데이터베이스의 동기화를 유지하는 1:1이중화 구조와, 하나의 원본 서버(130)로부터 두 개 이상의 상이한 복제서버(140, 150)가 이중화 관계를 이루어 원본 데이터베이스(131)에 변경이 발생하면 모든 복제 데이터베이스(141, 151)들에 변경사항을 반영하는 1:N 이중화 구조가 있다.
상기 1:1 이중화 구조의 경우 고정된 두 대의 서버들 사이에 데이터 복제를 위한 것으로 서버의 확장이 원천적으로 불가능하여 사용자의 집중된 요청으로 인해 과부하가 발생할 경우 대응하기 어려운 문제점이 있다. 또한 1:N 이중화 구조의 경 우는 N 개의 복제 서버를 두어 사용자의 검색 요청을 분산하는 효과는 있으나 역시 1개의 원본 서버가 가지는 단일점 오류(Single Point Failure)로 인해 점차 다양화, 대용량화하는 인터넷 서비스의 요구를 충족하기에 문제점이 있다.
따라서, 본 발명의 목적은 복수개의 원본 데이터베이스들과 복수개의 복제 데이터베이스들이 이중화 관계(M:N)를 형성하여 분산된 데이터를 통해 서비스의 가용성 및 확장성을 높이는 데이터베이스 이중화 장치 및 그 방법을 제공하는 데에 있다.
또한, 본 발명의 목적은 다수의 원본 서버들과 복제 서버들의 이중화 시 원본 서버들 사이의 데이터 충돌이 없이 복제 서버의 테이블에 데이터의 복제가 가능하도록 관리할 수 있도록 하는 데이터베이스 이중화 장치 및 그 방법을 제공하는 데에 있다.
상기 목적을 달성하기 위한 데이터베이스 이중화 장치는 적어도 하나 이상의 원본 서버에 저장된 데이터베이스를 네트워크를 통하여 물리적으로 상이한 적어도 하나 이상의 복제 서버의 데이터베이스로 복제하는 데이터베이스 이중화 장치로서, 상기 각각의 원본 서버는, 데이터베이스 변경 질의가 수행되면 그 변경 연산을 처리하는 질의 처리기; 상기 변경 연산이 상기 원본 테이블에 대한 변경 연산일 경우, 그 변경 연산에 대한 정보를 로그로 가공하여 변경 로그 장치에 저장하는 자료 저장기; 상기 변경 로그 장치로부터 상기 복제 서버로 전송할 변경 연산의 정보를 수집하여, 그 원본 테이블의 변경 정보만을 추출하는 복제 관리기; 및, 상기 추출된 변경 정보만을 상기 복제 서버에 전송하는 송신기를 포함하며, 상기 적어도 하나 이상의 원본 서버들의 원본 테이블들에 저장된 데이터들의 일관성을 유지하면서 상기 적어도 하나 이상의 복제 서버의 복제 테이블들에 복제하는 것을 특징으로 한다.
상기 목적을 달성하기 위한 데이터베이스 이중화 방법은 원본 서버에 저장된 데이터베이스를 네트워크를 통하여 물리적으로 상이한 복제 서버의 데이터베이스로 복제하는 방법으로서, (a) 다수의 원본 테이블들을 하나의 복제 서버의 단일 테이블로 통합하여 복제할 때, 원본 테이블의 내용을 복제 테이블로 초기화 시 객체 매핑 테이블에 등록하는 단계; (b) 변경 연산이 새로운 레코드를 삽입하는 경우일 때 객체 매핑 테이블에 등록하는 단계; 및, (c) 이중화 테이블 해제 시에 객체 매핑 테이블로부터 해제할 원본 서버의 엔트리들만 선별적으로 검색하여 복제 테이블에서 삭제하는 단계를 포함하는 것을 특징으로 한다.
이하, 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 상세하게 설명한다.
도 2는 다수의 원본 서버들의 원본 데이터베이스들과 다수의 복제 서버들의 복제 데이터베이스들 간에 데이터베이스 이중화 장치의 구성도를 도시한 것이다.
도 2에 도시된 바와 같이, 본 발명의 실시예에 따른 데이터 베이스 이중화 장치는, 원본 데이터베이스를 가지고 있는 다수의 원본 서버(210,220,230)와, 복제 데이터베이스를 가지는 있는 다수의 복제 서버(240, 250)으로 구성된다.
상기 각각의 원본 서버(210,220,230)의 데이터베이스에는 동일한 스키마 구조를 가지는 원본 테이블(211, 221, 231)이 각각 저장되어 있다. 상기 각각의 복제 서버(240, 250)의 데이터베이스에는 각 원본 서버(210,220,230)로부터 복제되는 복제 테이블(241, 251)이 저장된다. 이러한 구조에서 상기 원본 서버(220)는 두 개의 복제 서버(240, 250)와 1:N 구조의 이중화 관계를 형성하고, 상기 복제 서버(240)는 세 개의 원본 서버(210, 220, 230)으로부터 동일한 스키마 구조를 가지는 테이블을 복제 받아 단일로 통합된 테이블(241)을 구성함으로써 M:1 구조의 이중화 구조를 형성한다. 이러한 다중 서버 이중화 위상구조에서는 원본 서버가 고장이 발생하더라도 활성상태의 또 다른 원본 서버로부터 데이터를 계속해서 복제 받아 서비스를 지속할 수 있으며, 복제 서버가 고장이 나더라도 또 다른 활성상태의 복제 서버에 의해 중단 없는 서비스가 가능하다.
도 3은 본 발명의 실시예에 따른 데이터베이스 이중화 장치의 상세 구성도를 도시한 것이다.
도 3에 도시된 바와 같이, 본 발명의 실시예에 따른 데이터베이스 이중화 장치는 다수의 원본 서버(310, 320)와, 하나 이상의 복제 서버(330,340)로 구성된다.
상기 각각의 원본 서버(310, 320)는 데이터베이스 변경 질의가 수행되면 그 변경 연산을 처리하는 질의 처리기(311, 323)와, 상기 변경 연산이 상기 원본 테이블에 대한 변경 연산일 경우, 그 변경 연산에 대한 정보를 로그로 가공하여 변경 로그 장치(316,325)에 저장하는 자료 저장기(312, 324)와, 상기 변경 로그 장치(316,325)로부터 상기 복제 서버(330,340)로 전송할 변경 연산의 정보를 수집하여, 그 원본 테이블(315,326)의 변경 정보만을 추출하는 복제 관리기(313, 321)와, 그 추출된 변경 정보만을 상기 복제 서버(330,340)에 전송하는 송신기(314,322)로 구성된다.
상기 복제 서버(330,340)는 질의 처리기(331,341)와, 상기 원본 서버(310,320)에서 전송된 변경 연산의 정보를 수신하는 수신기(333,343)와, 상기 수신된 변경 연산의 정보를 이용하여 그 변경 연산이 상기 복제 테이블(335,345)에 대한 연산인지를 검증하고, 그 수신된 모든 변경 연산을 하나의 트랜잭션으로 처리하는 복제 관리기(334,344)와, 상기 복제 관리기(334,344)에 처리된 변경 연산을 상기 복제 데이터베이스(335,345)에 적용하는 자료 저장기(332,342)로 구성된다.
이와 같이 구성된 본 발명의 실시예에 따른 데이터베이스 이중화 장치의 동작을 설명하면 다음과 같다.
먼저, 원본 서버(310, 320)에서 데이터베이스 변경 질의(INSERT, UPDATE, DELETE)가 수행되면, 질의처리기(311, 323)와 자료저장기(312, 324)를 통해 변경 연산이 처리되고, 이때 이중화 대상 테이블인 원본 테이블(315)에 대한 변경 연산일 경우, 변경로그장치(316, 325)에 변경된 연산에 대한 정보가 로그로 가공되어 저장된다.
본 발명의 원본 서버(310, 320)에서의 변경 연산에 대한 복제 서버(330)로의 적용 방법에서는, 원본 서버(310, 320)의 복제관리기(313, 321)가 변경로그장치(316, 325)로부터 복제 서버(330)로 보낼 변경 연산의 정보를 수집하고, 전송할 복제 서버(330)와 이중화 관계를 가진 테이블의 변경 정보만을 추출한 후, 복제 서버(330)의 수신기(333)에게 수집한 변경 로그를 전송한다. 원본 서버(310, 320)로부터 변경 연산의 내용을 수신기(333)로부터 전달 받은 복제 서버(330)의 복제 관리기(334)에서는 변경 연산에 대해 정당성을 검증하여 이중화 관계인 테이블에 대한 연산인지 여부를 검증하고, 데이터의 일관성을 보장하고 빠른 변경 연산의 적용을 위해 모든 변경 연산들을 하나의 트랜잭션으로 처리한 후에, 전송 받은 변경 연산에 대해 복제 데이터베이스(335)에 적용하고, 변경 연산의 수행 결과를 원본 서버(310, 320)에 통지하게 된다.
도 4는 다수의 원본 서버들에서 복제 서버의 단일 테이블로 데이터베이스를 복제하고 관리하는 데이터베이스 이중화 장치의 구성도를 도시한 것이다.
도 4에 도시된 바와 같이, 두 개의 원본 서버(310, 320)의 원본 테이블들(315, 326)을 복제 서버의 복제 테이블(440)에 복제하는 이중화 관계에 있어서, 별도의 객체 매핑 테이블(430)을 유지하는 것을 기본 원리로 한다. 객체 매핑 테이블(430)은 원본 서버 주소, 원본 서버 테이블, 복제 서버 테이블, 복제 테이블 레코드 식별자로 구성된다.
본 발명에서 객체 매핑 테이블을 이용하여 복제 테이블을 관리할 경우, 복제 테이블에 새로 등록된 레코드에 대해 매핑 테이블과 복제 테이블을 동기화 하는 과정을 통해 다수의 원본 서버로부터 복제되는 데이터를 통합적으로 관리할 수 있다. 만일, 특정 원본 서버에 대해 이중화 관계를 해제할 경우 복제 테이블에 대해 잠금 을 설정하고, 복제 테이블로부터 이중화 관계를 해제하는 서버의 엔트리만 선택적으로 삭제한다. 특히, 종래의 방법의 경우 원본 테이블과 복제 테이블을 1:1 관계로만 설정하기 때문에 이중화 관계를 해제하면 모든 복제 테이블의 엔트리에 대해서 서비스가 불가능하여 새롭게 복제 테이블을 생성해야 하는 비효율성이 있었으나, 상기 매핑 테이블을 이용할 경우 특정 원본 서버(310)에 대해서 이중화 관계를 해제하더라도 복제 테이블로부터 해당 하는 원본 서버의 엔트리만(441, 444) 삭제하는 절차를 거치고, 또 다른 원본 서버(320)의 데이터에 대해서는 서비스가 가능하다.
도 5는 복제 대상 테이블에 대한 상태 천이도를 도시한 것이다.
본 발명에서 복제 대상 테이블들을 관리하기 위해 REP_READY(510), REP_INIT(520), REP_START(530), REP_STOP(540)과 같이 4단계의 상태를 정의하고 원본 서버의 복제 관리기에 의해 관리한다. 상기 4가지 상태는 각각의 복제 대상 테이블마다 적용한다. 먼저, 원본 서버에서 복제 대상 테이블을 정의한 후 원본 서버와 복제 서버에서 복제할 테이블에 대한 검증을 통하여 복제관리기에 등록되면 REP_READY 상태로 정의한다. 이후 복제 명령이 수행되면 REP_READY 상태의 테이블들에 대해 데이터 초기 동기화 작업을 수행하기 위해 REP_INIT상태로 변경한다. 데이터 초기 동기화 작업은 복제 테이블 정의 이전에 원본 서버에서 저장된 레코드들에 대해 복제 서버로 전송하여 두 서버의 테이블의 데이터를 일치시키는 것으로, 초기 데이터 동기화가 끝난 후 REP_START 상태로 변경한다. REP_START 상태에서는 원본 서버의 테이블에서 변경된 데이터에 대해 복제 서버의 테이블로 변경 사항을 전송하여 적용한다. 그 후 복제 중지 명령이 수행되면 상태를 REP_STOP으로 변경하고 다음 명령을 대기한다. REP_STOP상태에서는 다시 REP_START 상태로 변경하여 이전 상태를 이어서 복제를 수행하거나, 또는 초기 데이터 동기화 작업부터 다시 시작할 수 있다.
도 6은 복제 테이블을 등록하는 경우에 대한 원본 서버 측 동작 흐름도를 도시한 것이다.
원본 서버는 새로운 복제 테이블을 등록 또는 해제할 때, 정의된 복제 테이블이 기존에 복제를 수행하고 있던 테이블인지 검증한다(610). 원본 서버는 원본 테이블이 데이터베이스에 존재하는지 검증한다(611). 원본 서버는 복제 서버와 연결을 설정한다(612). 원본 서버는 복제 서버 측 복제 관리자에게 테이블 정보 변경을 요청한다(613). 원본 서버는 원본 서버의 복제 관리자가 정의한 복제 테이블의 정보를 변경하게 된다(614-616).
도 7 은 복제 테이블을 해제하는 경우에 대한 원본 서버 측 동작 흐름도를 도시한 것이다.
원본 서버는 원본 테이블이 데이터베이스에 존재하는지 검증한다(710). 원본 서버는 복제 서버와 연결을 설정하게 된다(711). 원본 서버는 복제 서버의 복제 관리자에게 테이블 정보 변경을 요청하게 된다(712). 원본 서버는 원본 서버의 복제 관리자가 정의한 복제 테이블의 정보를 변경하게 된다(713-714).
도 8은 복제 테이블의 해제에 대한 복제 서버 측 동작 흐름도를 도시한 것이다.
복제 서버 측에서 복제 테이블을 해제할 때, 복제 서버는 복제 테이블에 대한 변경을 금지할 수 있도록 배타 잠금을 획득하게 된다(810, 811). 복제 서버는 객체 매핑 테이블에서 원본 서버에 해당하는 엔트리를 검색하여 해당 엔트리에 대한 OID를 획득하게 된다(812, 815). 복제 서버는 획득한 OID를 이용하여 복제 테이블에서 레코드를 삭제하게 된다(816). 복제 서버는 객체 매핑 테이블에서 원본 서버에 해당하는 엔트리를 삭제한다(817). 복제 서버는 복제 테이블에 대한 원본 서버 측 레코드 삭제 작업을 종료 후 복제 테이블 정보를 삭제하게 된다(813, 814).
도 9는 데이터 복제를 수행하는 원본 서버 측 동작 흐름도를 도시한 것이다.
원본 서버 측에서 복제 서비스를 수행할 때, 원본 서버는 원본 테이블의 상태를 검사하여 REP_READY 상태일 경우(910) 데이터 초기화 작업을 진행하게 된다(911-916). 원본 서버는 그렇지 않을 경우 변경된 로그를 수집하여 복제 서버에 전송하게 된다(917-919).
도 10은 데이터 복제를 수행하는 복제 서버 측 동작 흐름도를 도시한 것이다.
복제 서버 측에서 복제 서비스를 수행할 때, 복제 서버는 원본 서버로부터 전송 받은 메시지 타입을 검사한다(1000, 1011). 만일 데이터 초기화를 위한 메시지인 경우, 복제 서버는 원본 테이블의 엔트리를 전송 받아(1012) 복제 테이블에 삽입하고(1013) 객체 매핑 테이블에 등록하게 된다(1014). 변경된 연산에 대한 메시지인 경우, 복제 서버는 변경 로그를 수신하고(1016) 단일 트랜잭션으로 변경 후 복제 테이블에 적용하게 된다(1017, 1018). 이때 변경 연산이 INSERT인 경우, 복제 서버는 객체 매핑 테이블에 등록하게 된다(1014).
이와 같은 본 발명은 다중 서버가 참여하여 복수개의 원본 데이터베이스와 복수개의 복제 데이터베이스가 이중화 관계를 형성하여 데이터베이스 이중화를 가능하게 함으로써 다음과 같은 효과가 있다.
첫째, 다중 위상 구조이기 때문에 특정 원본 서버 또는 특정 복제 서버가 계획하지 않은 고장이 발생하여 서비스를 진행할 수 없을 때에도, 본 발명은 활성 상태인 다른 서버를 통해 지속적인 서비스를 제공할 수 있다.
둘째, 본 발명은 복제할 데이터베이스 서버의 위상구조를 다중 서버 환경에 적합하게 적용하여 운영상의 편리성을 높일 수 있다.
셋째, 본 발명은 하나의 원본 테이블을 다수의 복제 서버로 복제가 가능하도록 하여 중앙에 집중되던 서버를 분산하고, 시스템의 운영 중에도 새로운 복제 서버를 추가하도록 함으로써 확장성을 높일 수 있을 뿐만 아니라, 사용자에게 빠른 응답을 제공하여 서비스의 질을 높일 수 있다.
이상으로 설명한 것은 본 발명에 따른 데이터베이스 이중화 장치 및 그 방법을 실시하기 위한 하나의 실시예에 불과한 것으로서, 본 발명은 상기한 실시예에 한정되지 않고, 이하의 특허청구의 범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변경 실시가 가능한 범위까지 본 발명의 기술적 정신이 미친다고 할 것이다.

Claims (4)

  1. 적어도 하나 이상의 원본 서버에 저장된 데이터베이스를 네트워크를 통하여 물리적으로 상이한 적어도 하나 이상의 복제 서버의 데이터베이스로 복제하는 데이터베이스 이중화 장치에 있어서,
    상기 각각의 원본 서버는,
    데이터베이스 변경 질의가 수행되면 그 변경 연산을 처리하는 질의 처리기;
    상기 변경 연산이 상기 원본 테이블에 대한 변경 연산일 경우, 그 변경 연산에 대한 정보를 로그로 가공하여 변경 로그 장치에 저장하는 자료 저장기;
    상기 변경 로그 장치로부터 상기 복제 서버로 전송할 변경 연산의 정보를 수집하여, 그 원본 테이블의 변경 정보만을 추출하는 복제 관리기; 및
    그 추출된 변경 정보만을 상기 복제 서버에 전송하는 송신기를 포함하며,
    상기 적어도 하나 이상의 원본 서버들의 원본 테이블들에 저장된 데이터들의 일관성을 유지하면서 상기 적어도 하나 이상의 복제 서버의 복제 테이블들에 복제시에 객체 매핑 테이블과 복제 테이블을 동기화하여 하나 이상의 원본 서버들부터 복제되는 데이터를 통합적으로 관리하는 것을 특징으로 하는
    데이터베이스 이중화 장치.
  2. 제1항에 있어서, 상기 각 복제 서버는,
    상기 원본 서버에서 전송된 변경 연산의 정보를 수신하는 수신기;
    상기 수신된 변경 연산의 정보를 이용하여 그 변경 연산이 상기 복제 테이블에 대한 연산인지를 검증하고, 그 수신된 모든 변경 연산을 하나의 트랜잭션으로 처리하는 복제 관리기; 및
    상기 복제 관리기에 처리된 변경 연산을 상기 복제 데이터베이스에 적용하는 자료 저장기를 포함하는 것을 특징으로 하는
    데이터베이스 이중화 장치.
  3. 원본 서버에 저장된 데이터베이스를 네트워크를 통하여 물리적으로 상이한 복제 서버의 데이터베이스로 복제하는 방법에 있어서,
    (a) 다수의 원본 테이블들을 객체 매핑 테이블을 이용하여 하나의 복제 서버의 단일 테이블로 통합하여 복제할 때, 원본 테이블의 내용을 복제 테이블로 초기화 시 상기 객체 매핑 테이블에 등록하는 단계;
    (b) 변경 연산이 새로운 레코드를 삽입하는 경우일 때 상기 객체 매핑 테이블에 등록하는 단계; 및
    (c) 이중화 테이블 해제 시에 상기 객체 매핑 테이블로부터 해제할 원본 서버의 엔트리들만 선별적으로 검색하여 복제 테이블에서 삭제하는 단계를 포함하는 것을 특징으로 하는
    데이터베이스 이중화 방법.
  4. 제3항에 있어서, 상기 데이터베이스 이중화 방법은,
    원본 서버에서 변경된 데이터를 복제 서버에서 반영할 때, 원본 서버로부터 수신된 변경 로그를 복제 테이블에 반영하기 위해서 단일 트랜잭션으로 가공하여 처리하는 것을 특징으로 하는 데이터베이스 이중화 방법.
KR20030095634A 2003-12-23 2003-12-23 데이터베이스 이중화 장치 및 그 방법 KR100561229B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20030095634A KR100561229B1 (ko) 2003-12-23 2003-12-23 데이터베이스 이중화 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20030095634A KR100561229B1 (ko) 2003-12-23 2003-12-23 데이터베이스 이중화 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20050064278A KR20050064278A (ko) 2005-06-29
KR100561229B1 true KR100561229B1 (ko) 2006-03-15

Family

ID=37255894

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20030095634A KR100561229B1 (ko) 2003-12-23 2003-12-23 데이터베이스 이중화 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR100561229B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10599358B2 (en) 2018-06-19 2020-03-24 TmaxData Co., Ltd. Method for moving data extent

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100926880B1 (ko) * 2007-05-21 2009-11-16 엔에이치엔(주) Dbms에서의 데이터 복제 방법 및 시스템
KR100913196B1 (ko) * 2007-12-11 2009-08-24 한국전자통신연구원 파일 갱신 시스템 및 방법
GB2494814B (en) * 2010-06-20 2019-01-23 Hewlett Packard Development Co Storage subsystem data duplication policy
KR101322401B1 (ko) 2012-01-31 2013-10-28 주식회사 알티베이스 동기적 이중화를 위한 데이터베이스 관리 시스템의 병렬 처리 장치 및 방법
KR101983120B1 (ko) 2016-11-25 2019-05-31 주식회사 실크로드소프트 데이터베이스의 이중화를 위한 방법
CN109117093B (zh) * 2018-08-20 2021-10-01 赛凡信息科技(厦门)有限公司 保证分布式对象存储中的数据、流量、容量一致性的方法
KR102303895B1 (ko) * 2020-03-12 2021-09-23 (주)선재소프트 이중화 성능이 개선된 데이터베이스 이중화시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10599358B2 (en) 2018-06-19 2020-03-24 TmaxData Co., Ltd. Method for moving data extent

Also Published As

Publication number Publication date
KR20050064278A (ko) 2005-06-29

Similar Documents

Publication Publication Date Title
US10289338B2 (en) Multi-class heterogeneous clients in a filesystem
US6950833B2 (en) Clustered filesystem
US8001222B2 (en) Clustered filesystem with membership version support
US9275058B2 (en) Relocation of metadata server with outstanding DMAPI requests
US8600944B2 (en) System and method for managing integrity in a distributed database
US7765329B2 (en) Messaging between heterogeneous clients of a storage area network
US20090012932A1 (en) Method and System For Data Storage And Management
US20030028514A1 (en) Extended attribute caching in clustered filesystem
US20090144338A1 (en) Asynchronously replicated database system using dynamic mastership
CN111858097A (zh) 分布式数据库系统、数据库访问方法
JPH07319748A (ja) データ処理システム内で複写データ一貫性を維持するためのシステムおよび方法
US20040153841A1 (en) Failure hierarchy in a cluster filesystem
KR20070110367A (ko) 데이터 관리 방법 및 장치
US20040143607A1 (en) Recovery and relocation of a distributed name service in a cluster filesystem
JP4136615B2 (ja) データベースシステム及びデータベースのアクセス方法
KR100561229B1 (ko) 데이터베이스 이중화 장치 및 그 방법
KR100521742B1 (ko) 엑스엠엘 문서의 구조 및 속성 정보의 손실 없이 엑스엠엘문서를 원격 서버로 복제하는 엑스엠엘 데이터베이스이중화 장치 및 그 방법
JP2011522337A (ja) サーバクラスタに配信されるコンピュータシステムのソフトウェアモジュールの同期化方法、同期化システムおよびデータストレージへの適用
JPH0962602A (ja) サーバ情報管理方法および管理システム
Singh et al. Database replication techniques: a review
CN116360875A (zh) 一种高可用性的配置中心服务系统
Vinothini et al. An Database Query Service In Large Scale Reliable Storage System For Automatic Reconfiguration
KR20050063300A (ko) 컨텐츠 분배 관리 시스템에서의 컨텐츠 복제 방법

Legal Events

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

Payment date: 20090303

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee