KR100249809B1 - 주기억 장치 데이터 베이스 시스템을 위한 이중 포트 램 사용무중단 연속 메모리 백업 장치 및 방법 - Google Patents

주기억 장치 데이터 베이스 시스템을 위한 이중 포트 램 사용무중단 연속 메모리 백업 장치 및 방법 Download PDF

Info

Publication number
KR100249809B1
KR100249809B1 KR1019970066357A KR19970066357A KR100249809B1 KR 100249809 B1 KR100249809 B1 KR 100249809B1 KR 1019970066357 A KR1019970066357 A KR 1019970066357A KR 19970066357 A KR19970066357 A KR 19970066357A KR 100249809 B1 KR100249809 B1 KR 100249809B1
Authority
KR
South Korea
Prior art keywords
mmp
data
memory
bmp
checkpoint
Prior art date
Application number
KR1019970066357A
Other languages
English (en)
Other versions
KR980004061A (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 KR1019970066357A priority Critical patent/KR100249809B1/ko
Publication of KR980004061A publication Critical patent/KR980004061A/ko
Application granted granted Critical
Publication of KR100249809B1 publication Critical patent/KR100249809B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1474Saving, restoring, recovering or retrying in transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup

Abstract

본 발명은 주기억 장치 데이터 베이스 시스템의 구성에 필요한 메모리 백업 장치 및 방법에 관한 것으로, 메모리 백업 동안에도 트랜잭션 ( transaction ) 처리를 위해서 시스템이 메모리를 액세스하여 데이터를 읽거나 쓸 수 있게 하여 데이터 백업시에 트랜잭션 처리를 중지하여야 하는 문제점을 해결하였다.
본 발명은 주기억 장치 데이터 베이스 방식으로 데이터 처리를 하는 경우 시스템 가동의 중단 없이 메모리 백업을 할 수 있어 검사점 ( checkpoint ) 시간 간격을 줄일 수 있게 됨에 따라 시스템 장애 이후 재시동될 때 메모리에 재적재할 데이터 베이스의 크기를 크게 줄일 수 있어 시스템 장애 이전 상태로 데이터를 복구시키는데 걸리는 시간을 단축시킬 수 있는 것이다.

Description

주기억 장치 데이터 베이스 시스템을 위한 이중 포트 램 사용 무중단 연속 메모리 백업 장치 및 방법
본 발명은 휘발성의 주기억 장치에서 운영되는 데이터 베이스 관리 시스템을 위한 이중 포트 램 사용 무중단 연속 메모리 백업 장치 및 방법에 관한 것으로, 더욱 상세하게는 주기억 장치 데이터 베이스 방식으로 데이터 처리를 하는 경우 시스템 가동의 중단 없이 메모리 백업을 할 수 있어 검사점의 시간 간격을 줄일 수 있고, 시스템 장애 이후 재시동될 때 주기억 장치 데이터 베이스를 메모리에 빠르게 재적재할 수 있고 시스템 장애 이전 상태로 데이터를 용이하게 복구시킬 수 있는 무중단 연속 메모리 백업 장치와 방법의 개선에 관한 것이다.
일반적으로 주기억 장치에서 운영되는 데이터 베이스 관리 시스템에서는 전체 데이터 베이스나 자주 액세스하는 데이터 베이스의 일부를 주기억 장치 내에 상주시킨 상태에서 각종 데이터 베이스 연산(트랜잭션)을 수행한다. 주기억 장치 데이터 베이스 시스템을 구축하는데 있어서 반드시 해결해야 할 문제점 중의 하나는 주기억 장치 데이터 베이스 파손 시의 회복이다. 데이터 베이스 전체가 휘발성의 주기억 장치에 상주하기 때문에 시스템 파워나 주기억 장치 칩과 같은 하드웨어에 이상이 발생할 경우 데이터 베이스 전체가 파손되기 때문이다.
따라서, 기존의 주기억 장치 데이터 베이스 시스템은 휘발성의 주기억 장치에 전원 공급이 중단되었을 때 주기억 장치의 데이터를 안전한 기억장치에 백업할 수 있을 정도의 전원을 공급하기 위해 배터리를 이용한 전원 공급 장치를 이용하지 않으면 안된다. 또한 데이터 백업을 위해 부가적인 하드웨어 구성 요소가 필요하였다. 이들로 인해 백업시에 성능 저하를 가져오는 문제점이 있었다.
본 발명은 상기와 같은 문제점을 감안하여 이루어진 것으로, 본 발명의 목적은 주기억 장치 데이터 베이스 시스템에서 휘발성의 메모리에 상주하고 있는 데이터를 비휘발성의 안전 메모리로 백업을 할 때 사용하는 연속 메모리 백업 방법과 장치를 발명하여 검사점과 회복에 걸리는 시간을 최소화하는 것이다.
본 발명의 다른 목적은 휘발성의 주기억 장치를 그대로 이용하면서 배터리를 이용한 전원 공급 장치가 필요하지 않고, 데이터 백업시에도 정상적으로 트랜잭션을 수행할 수 있는 것이다.
주기억 장치 데이터 베이스 시스템은 실시간 트랜잭션 처리 분야와 같은 신속한 응답성을 요구하는 분야에 적합하다. 그러나 주기억 장치는 일반적으로 휘발성의 기억 장치이기 때문에 시스템의 여러 오류들로부터 저장하고 있는 데이터가 쉽게 소멸될 수 있다. 이러한 시스템의 오류들로부터 주기억 장치의 내용을 보호하기 위해서 검사점을 실시하여 주기억 장치의 데이터를 비휘발성의 안전한 기억 장치로 백업을 받아야 한다. 회복에 드는 시간을 줄이기 위하여 가능한 한 자주 검사점을 실시하는 것이 바람직 하나, 검사점 시에는 주기억 장치에 갱신이 이루어진 데이터를 안전한 기억 장치에 백업을 하는 동안 트랜잭션 처리를 잠시 중단하여야 하기 때문에 검사점을 자주 하면 할수록 시스템 오버헤드를 주게 된다. 따라서, 주기억 장치 데이터 베이스 시스템에서는 검사점을 자주 실시하되 검사점 시에도 정상적으로 트랜잭션을 함께 수행하면서 백업 시간을 얼마나 빨리 할 수 있느냐가 주기억 장치 데이터 베이스 시스템의 높은 처리율을 그대로 보존하면서 신속한 응답성과 신뢰성을 유지하는 데 결정적인 요소가 된다.
도 1은 본 발명에 관한 이중 포트 램 사용 무중단 이중면 연속 메모리 백업 장치를 보인 구조도
도 2는 이미지 복사 과정에서의 BRM의 기록 충돌 방지 순서도
도 3은 MMP, BMP와 CMP를 하나의 보드에 포함하는 무중단 연속 메모리 백업 보드를 보인 구조도
도 4는 CMP 메모리 영역을 MMP와 BMP 메모리 영역과 분리한 무중단 연속 메모리 백업 보드를 보인 구조도
*주요 도면에 대한 부호 설명
100 : MMP
200 : BMP
300 : CMP
400 : BRM
500 : CPU
상기 목적을 달성하기 위한 본 발명의 구성 및 작용을 첨부도면에 의거하여 상세히 설명하면 다음과 같다.
본 발명은 크게 이중 포트 램 사용 무중단 이중면 연속 메모리 백업 구조와 무중단 메모리 백업용 보드로 구성 된다.
1. 이중 포트 램 사용 무중단 이중면 연속 메모리 백업 구조.
이중 포트 램 ( dual-port DRAM )은 두 가지 종류가 있다. 한 형태는 하나의 메모리 셀을 독립된 두 포트가 액세스하는 형태가 있고, 다른 한 형태는 메모리의 행을 복사한 후 시리얼로 액세스하는 형태이다. 전자는 스태틱 램 ( static RAM : 이하 「SRAM」이라 한다 )에서 사용하고 있고, 후자는 비디오 램 ( video RAM : 이하 「VRAM」이라 한다 )에서 사용하는 방법이다. VRAM 이 SRAM 보다 용량 및 가격에 있어 우수하기 때문에 본 발명에서는 VRAM 을 사용하여 이중 포트 램 사용 무중단 연속 메모리 백업 방법과 장치를 발명하였다.
도 1은 이중 포트 램 사용 무중단 이중면 연속 메모리 백업 구조를 보인 것으로, VRAM은 두 개의 독립된 포트를 사용하여 트랜잭션 메모리를 액세스한다. 하나의 포트는 병렬 포트로서 바이트 단위로 직접 메모리 셀을 액세스하는 포트이고, 다른 하나의 포트는 액세스하고자 하는 하나의 행을 내부 레지스터에 일단 복사한 후 순차적으로 액세스 한다.
도 1에서 (a)는 평상시에 데이터 베이스를 액세스하는 경우를 나타내는 것으로, 트랜잭션이 메인 메모리 플랜 ( Main Memory Plane : 이하 「MMP」이라 한다 )(100)의 데이터를 기록할 때는 동시에 백업 메모리 플랜 (Backup Memory Plane : 이하 「BMP」이라 한다 )(200)에도 기록하게 된다.
도 1에서 (b)는 검사점이 이루어 졌을 때의 백업 장치 상태를 나타내는 것으로, 검사점이 이루어지면 BMP(200)의 데이터를 체크포인트 메모리 플랜 ( Checkpoint Memory Plane : 이하 「CMP」 라 한다 )(300)로 전송한다. 상기 CMP(300)는 비휘발성 메모리인 플래시 메모리를 사용한다. 중요한 것은 이 때 트랜잭션 처리가 정상적으로 이루어져서 MMP(100)를 액세스하여 데이터를 판독하거나 기록하게 된다. 검사점 동안에 MMP(100)의 한 메모리 주소에 데이터가 기록되면 동시에 MMP(100)의 그 메모리 주소가 백업 리트랜스미션 모니터 (Backup & Retransmission Monitor : 이하 「BRM」이라 한다 )(400)에 전달된다. 따라서 BRM(400)은 검사점 동안에 MMP(100)에 기록된 데이터의 주소를 갖게 된다.
도 1에서 (c)는 검사점을 마치고 난 후의 백업 장치의 상태를 나타내는 것으로, 이 시기에 BMP(200) 이미지를 MMP(100) 이미지와 일치시킨다. 검사점을 수행하는 동안 MMP(100)에 갱신이 이루어지기 때문에 검사점을 수행하고 나면 MMP(100)의 이미지와 BMP(200)의 이미지가 다르게 된다. 주목할 것은 이미지를 일치시키는 과정에서 BRM(400)이 관리하고 있는 검사점 동안의 MMP(100) 갱신 주소를 참조하여 MMP(100)의 갱신 데이터 만을 이중 포트 램의 순차 포트를 이용하여 BMP(200)에 기록한다. 이 과정 동안에도 트랜잭션은 MMP(100)를 액세스 할 수 있다.
이러한 각 단계를 통하여 MMP(100)의 이미지를 BMP(200)로 옮길 경우 문제가 발생할 수 있다. 왜냐하면, 도1 의 (c)에서, 단계 1, 단계 2 및 단계 3은 독립적으로 수행되기 때문에 이미지를 일치하는 동안에(단계 3) 병렬 포트를 통하여 임의의 한 트랜잭션이 MMP(100)의 같은 주소에 데이터를 기록하려고 하면(단계 1) MMP(100)의 순차 포트를 통해 BMP(200) 순차 포트로 전달할 데이터와 쓰기 충돌이 발생하게 된다. 이를 방지하기 위해서 BRM(400) 회로를 사용한다.
도 2는 BRM(400)이 쓰기 충돌을 방지하며 이미지 복사를 수행하는 순서이다. 이미지 복사를 시작하면, 검사점 동안 갱신된 MMP(100) 데이터를 읽고(S101), 다음 MMP(100) 의 동일 주소에 데이터를 기록하려는 연산이 있는지를 판단하여(S102), 연산이 없으면 검사점 동안 갱신된 MMP(100)의 데이터를 BMP(200)에 기록한(S103) 후 상기 단계 S101로 되돌아 가고, 연산이 있으면 판독한 MMP(100) 검사점 데이터는 무시하여(S104), 최신 MMP(100) 기록 데이터를 BMP(200) 에 기록한다(S105). 다음 BRM(400) 의 MMP(100) 검시점 갱신 주소가 없는지를 판단하여(S106), 있으면 상기 단계 S101로 되돌아가고 없으면 이미지 복사가 종료된다.
상술한 BRM(400)은 도 1의 단계 3 에서 MMP(100)로부터 BMP(200)로 데이터를 복사할 때, 트랜잭션이 같은 주소를 접근하는가를 하드웨어적으로 감시한다. 만약 같은 장소를 접근하면 트랜잭션에 의해서 기록되는 데이터가 더 최신의 정보이기 때문에 단계 3의 데이터 복사를 중지시킨다. 주소선의 감시는 페이지의 처음 주소의 상위 주소선 (페이지의 크기에 의존)을 트랜잭션이 접근하는 주소선과 비교하는 것이다. 이 수행은 하드웨어적으로 수행하기 때문에 트랜잭션에 영향을 주지 않는다.
2. 무중단 백업용 메모리 보드.
다음은 도 1에 기술된 이중 포트 램 사용 무중단 이중면 연속 메모리 백업 장치를 실제 주기억 장치 데이터 베이스 시스템에 응용하기 위한 두 가지 방법에 대해 기술한다.
도 3 은 MMP(100), BMP(200)와 CMP(300)를 하나의 보드에 포함하는 무중단 연속 백업 메모리 보드 구조이다. MMP(100), BMP(200) 와 CMP(300) 를 하나의 보드에 포함하는 무중단 연속 메모리 백업 보드를 보여 준다. 중앙 처리 장치(CPU)(500)는 트랜잭션의 처리 시에는 시스템 버스를 통하여 메모리 보드로 접근하고, 백업시에 백업 버스를 이용한다. 이 구조는 칩 단위로 백업 및 재적재가 수행되기 때문에 메모리 용량이 커질 경우에도 성능 저하를 방지할 수 있다.
도 4는 CMP(300) 메모리 영역을 MMP(100)와 BMP(200) 메모리 영역과 분리한 무중단 연속 백업 메모리 보드 구조이다. CMP(300) 메모리 영역을 MMP(100)와 BMP(200) 메모리 영역과 분리한 무중단 연속 메모리 백업 보드를 보여 준다. CMP(300)를 쓰기 횟수 제한이 있는 플래시 메모리를 사용할 경우 도 2 의 구조에서는 CMP(300)의 수명이 다 되면 MMP(100)와 BMP(200)가 포함된 전체 보드를 교체해야 하지만, 도 3 의 구조에서는 CMP(300) 보드 만을 교체하면 되고, 다른 종류의 비휘발성 메모리로 CMP(300) 보드를 확장하기가 용이하다.
이상에서 설명한 바와 같이, 제안된 이중 포트 램 사용 무중단 이중면 연속 메모리 백업 장치를 주기억 장치 데이터 베이스 시스템에 적용하므로써 검사점 데이터를 백업하면서 동시에 트랜잭션을 처리할 수 있게 하였다. 이로 인하여 검사점 시에 나타나는 데이터 베이스 시스템의 성능 저하를 막을 수 있어 검사점 시간 간격을 줄일 수 있고, 데이터 베이스 시스템의 붕괴로부터 회복 시간을 크게 단축시킬 수 있다.
또한, 제안된 이중 포트 램 사용 무중단 이중면 연속 메모리 백업 장치를 사용한 주기억 장치 데이터 베이스 시스템은 실시간성을 요구하는 통신 시스템의 데이터 베이스 관리 시스템으로 사용할 수 있다. 이동 통신망과 같이 사용자가 이동을 하기 때문에 데이터 베이스의 갱신이 자주 발생하고 검색 시에 빠른 응답을 해야 할 필요가 있는 분야에 적절하게 사용될 수 있는 것이다.

Claims (4)

  1. 트랜젝션이 MMP(100)의 데이터를 기록함과 동시에 BMP(200) 에도 데이터를 기록하는 제 1과정과; BMP(200)의 데이터를 CMP(300) 로 전송하고 MMP(100)를 액세스하여 데이터를 판독하거나 기록하여 검사점 동안에 MMP(100) 에 데이터가 기록이 되면 동시에 MMP(100)의 메모리 주소가 BRM(400) 에 전달되는 제 2과정과; BMP(200) 이미지와 MMP(100) 이미지를 일치시키는 과정에서 BRM(400) 이 관리하고 있는 검사점 동안의 MMP(100) 갱신 주소를 참조하여 MMP(100) 의 갱신 데이터 만을 이중 포트 램의 순차 포트를 이용하여 BMP(200) 에 기록하는 제 3과정으로 이루어지는 것을 특징으로 하는 이중 포트 램 사용 무중단 연속 메모리 백업 장치
  2. 제 1항에 있어서, MMP(100), BMP(200)와 CMP(300)가 하나의 보드에 포함되는 것을 특징으로 하는 이중 포트 램 사용 무중단 연속 메모리 백업 장치
  3. 제 1도에 있어서, CMP(300) 메모리 영역을 MMP(100)와 BMP(200) 메모리 영역과 분리한 것을 특징으로 하는 이중 포트 램 사용 무중단 연속 메모리 백업 장치
  4. BRM의 쓰기 충돌 방지 방법에 있어서, 이미지 복사를 시작하여 검사점 동안 갱신된 MMP 데이터를 읽는 단계(S101), 다음 MMP 의 동일 주소에 데이터를 기록하려는 연산이 있는지를 판단하는 단계(S102), 상기 단계 102 로부터 연산이 없으면 검사점 동안 갱신된 MMP 데이터를 BMP 에 기록하고 있으면 판독한 MMP 검사점 데이터는 무시하는 단계(S103∼S104), 최신 MMP 기록 데이터를 BMP 에 기록하는 단계(S105), BRM 의 MMP 검시점 갱신 주소가 없는지를 판단하는 단계(S106), 상기 단계 106으로부터 있으면 상기 단계 S101로 되돌아가고 없으면 이미지 복사가 종료되는 이중 포트 램 사용 무중단 연속 메모리 백업 방법.
KR1019970066357A 1997-12-05 1997-12-05 주기억 장치 데이터 베이스 시스템을 위한 이중 포트 램 사용무중단 연속 메모리 백업 장치 및 방법 KR100249809B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970066357A KR100249809B1 (ko) 1997-12-05 1997-12-05 주기억 장치 데이터 베이스 시스템을 위한 이중 포트 램 사용무중단 연속 메모리 백업 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970066357A KR100249809B1 (ko) 1997-12-05 1997-12-05 주기억 장치 데이터 베이스 시스템을 위한 이중 포트 램 사용무중단 연속 메모리 백업 장치 및 방법

Publications (2)

Publication Number Publication Date
KR980004061A KR980004061A (ko) 1998-03-30
KR100249809B1 true KR100249809B1 (ko) 2000-03-15

Family

ID=19526580

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970066357A KR100249809B1 (ko) 1997-12-05 1997-12-05 주기억 장치 데이터 베이스 시스템을 위한 이중 포트 램 사용무중단 연속 메모리 백업 장치 및 방법

Country Status (1)

Country Link
KR (1) KR100249809B1 (ko)

Also Published As

Publication number Publication date
KR980004061A (ko) 1998-03-30

Similar Documents

Publication Publication Date Title
US5437022A (en) Storage controller having additional cache memory and a means for recovering from failure and reconfiguring a control unit thereof in response thereto
US6622263B1 (en) Method and apparatus for achieving system-directed checkpointing without specialized hardware assistance
KR100743180B1 (ko) 데이타이중화시스템
US20030200394A1 (en) Cache memory arrangement and methods for use in a cache memory system
US6035347A (en) Secure store implementation on common platform storage subsystem (CPSS) by storing write data in non-volatile buffer
JP4041473B2 (ja) マルチクラスタ・ストレージ・サブシステムのための自律型パワー・ロス・リカバリ
US4603406A (en) Power backed-up dual memory system
US20010049749A1 (en) Method and system for storing duplicate data
JPH0619722B2 (ja) コンピユータの状態をセーブする装置
US6654880B1 (en) Method and apparatus for reducing system down time by restarting system using a primary memory before dumping contents of a standby memory to external storage
US7000083B2 (en) Resynchronization of count key data with its corresponding meta data
JPS607818B2 (ja) フアイルのバツクアツプ方法
JP2001134487A (ja) ディスクアレイ装置
KR100249809B1 (ko) 주기억 장치 데이터 베이스 시스템을 위한 이중 포트 램 사용무중단 연속 메모리 백업 장치 및 방법
JP3253473B2 (ja) 二重化された共用メモリの等価性回復処理方法および装置
JPH01271856A (ja) バツテリーバツクアツプメモリ装置
JPH0778231A (ja) メモリカード
JPH10133926A (ja) ミラー化ディスク復旧方法と復旧システム
US6687852B1 (en) Ultra reliable disk memory for duplex processor platforms
JPH07319637A (ja) ディスク装置の制御装置およびディスク装置の制御方 法
JPH02297237A (ja) 電子計算機システムの自動再起動装置
JP2002108640A (ja) デュープレックスシステム、シングルプロセッサシステム、及びサブボード
JPH0217550A (ja) マルチプロセッサシステムの障害処理方式
JPH02118745A (ja) メモリバックアップ装置
JPH04273516A (ja) 磁気ディスク装置

Legal Events

Date Code Title Description
A201 Request for examination
G15R Request for early opening
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20091113

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee