1 |
1
공유 디스크(Shared-disk) 모델을 사용하는 다중 서버 데이터베이스 관리시스템(database management system)에서 버퍼 일관성 관리방법에 있어서,
서버 프로세스가 트랜잭션 수행 중 버퍼 페이지를 디스크로 쓰기(write-out) 하는 경우, 수정한 버퍼 페이지에 대한 정보를 가지는 페이지 정보(page-info)를 상기 서버 프로세스 내의 페이지 정보 리스트(page-info list)에 저장하는 트랜잭션 수행단계와,
서버 프로세스가 트랜잭션 수행 중 볼륨 로크(volume lock)를 획득한 경우 상기 페이지 정보가 저장되는 일관성 볼륨(coherency volume) 내의 페이지 정보 페이지(page-info page)를 읽어 버퍼의 내용을 데이터베이스와 일치시키는 볼륨 로크 획득단계 및
상기 트랜잭션 수행 단계 또는 볼륨 로크 획득단계를 수행한 후 트랜잭션 종료시에 상기 서버 프로세스의 페이지 정보 리스트(page-info list)에 저장되어 있는 수정된 페이지 정보(page-info)들을 상기 일관성 볼륨(coherency volume)에 저장하는 트랜잭션 종료단계를 포함하는 것을 특징으로 하는 공유 디스크 모델을 사용하는 다중 서버 데이터베이스 관리시스템에서의 버퍼 일관성 관리방법
|
2 |
2
제 1항에 있어서,
상기 서버 프로세스는, 가장 마지막으로 데이터베이스에 접근한 시점에 대한 정보를 나타내는 최근 접근 타임스탬프(last access timestamp)를 유지하고,
상기 일관성 볼륨(coherency volume) 내의 페이지 정보 페이지(page-info page)에 저장되는 각 페이지 정보(page-info)는, 수정된 페이지를 식별하기 위한 페이지 식별자(page ID) 및 해당 페이지가 수정된 시점을 표시하는 타임스탬프(timestamp)를 유지하며,
상기 일관성 볼륨(coherency volume)은, 상기 페이지 정보(page-info)의 타임스탬프(timestamp)나 상기 최근 접근 타임스탬프(last access timestamp)에 타임스탬프(timestamp) 값을 할당하기 위하여 사용되는 타임스탬프 카운터(timestamp counter)를 유지하는 것을 특징으로 하는 공유 디스크 모델을 사용하는 다중 서버 데이터베이스 관리시스템에서의 버퍼 일관성 관리방법
|
3 |
3
제 1항에 있어서,
상기 일관성 볼륨(coherency volume)에 저장되는 페이지 정보 페이지(page-info page)는 상기 페이지 정보(page-info)들을 시스템에 기 설정된 크기(N)를 가지는 원형 리스트에 저장하는 것을 특징으로 하는 공유 디스크 모델을 사용하는 다중 서버 데이터베이스 관리시스템에서의 버퍼 일관성 관리방법
|
4 |
4
제 1항에 있어서,
상기 트랜잭션 종료단계는,
상기 일관성 볼륨(coherency volume)에서 타임스탬프 카운터(timestamp counter)를 읽는 읽기(read) 단계와,
상기 읽기(read) 단계 후 상기 서버 프로세스의 최근 접근 타임스탬프(last access timestamp)를 상기 읽기(read) 단계 수행 결과값으로 업데이트 하는 업데이트(update) 단계 및
상기 업데이트(update) 단계 후 상기 서버 프로세스의 페이지 정보 리스트(page-info list) 내의 모든 페이지 정보(page-info)들을 삭제하는 삭제(delete) 단계를 포함하여 구성되는 것을 특징으로 하는 공유 디스크 모델을 사용하는 다중 서버 데이터베이스 관리시스템에서의 버퍼 일관성 관리방법
|
5 |
5
제 4항에 있어서,
상기 트랜잭션이 수행된 후 종료될 때, 해당 트랜잭션에서 수행한 데이터베이스 갱신을 실제로 데이터베이스에 반영시키는 커밋(commit) 처리가 수행되는 경우, 상기 업데이트(update) 단계와 상기 삭제(delete) 단계 사이에,
상기 서버 프로세스의 페이지 정보 리스트(page-info list) 안에 있는 모든 페이지 정보(page-info)의 타임스탬프(timestamp)에 상기 업데이트(update) 단계에서 업데이트된 최근 접근 타임스탬프(last access timestamp)를 기록하는 쓰기(write) 단계 및
상기 서버 프로세스의 페이지 정보 리스트(page-info list)에 있는 페이지 정보(page-info)들을 일관성 볼륨(coherency volume) 내의 페이지 정보 페이지(page-info page)에 저장하고 타임스탬프 카운터(timestamp counter)를 1만큼 증가시키는 증가(increase) 단계를 더 수행하는 것을 특징으로 하는 공유 디스크 모델을 사용하는 다중 서버 데이터베이스 관리시스템에서의 버퍼 일관성 관리방법
|
6 |
6
제 1항 내지 5항 중 어느 한 항에 있어서,
상기 볼륨 로크 획득단계는,
상기 서버 프로세스의 최근 접근 타임스탬프(last access timestamp)와 상기 일관성 볼륨(coherency volume) 내의 페이지 정보 페이지(page-info page)에 저장된 상기 페이지 정보(page-info)들의 타임스탬프(timestamp)를 비교하여, 상기 최근 접근 타임스탬프(last access timestamp)보다 상기 페이지 정보(page-info)의 타임스탬프(timestamp)가 더 나중 시점인 경우, 해당 페이지 정보(page-info)가 가리키는 페이지를 상기 버퍼에서 삭제하는 과정을 더 포함하는 것을 특징으로 하는 공유 디스크 모델을 사용하는 다중 서버 데이터베이스 관리시스템에서의 버퍼 일관성 관리방법
|
7 |
7
제 6항에 있어서,
상기 일관성 볼륨(coherency volume)의 원형 리스트에 저장된 페이지 정보(page-info)들의 타임스탬프(timestamp)들 중 일부가 오버플로우(overflow)되는 경우를 해결하기 위해,
상기 타임스탬프(timestamp)의 최대값으로 타임스탬프(timestamp)의 표현형인 정수형의 최대표현값(Tmax)보다 작은 값(Ttimestamp_max)을 최대값으로 사용하고, 상기 페이지 정보(page-info)들의 타임스탬프(timestamp)들 중에서 오버플로우(overflow) 되는 타임스탬프(timestamp)에는 시스템에 기 설정된 일정한 값(Tadd)을 더하는 것을 특징으로 하는 공유 디스크 모델을 사용하는 다중 서버 데이터베이스 관리시스템에서의 버퍼 일관성 관리방법
|
8 |
8
제 7항에 있어서,
상기 Ttimestamp_max는,
의 값을 가지고,
상기 Tadd는,
의 값을 가지는 것을 특징으로 하는 공유 디스크 모델을 사용하는 다중 서버 데이터베이스 관리시스템에서의 버퍼 일관성 관리방법
|
9 |
9
제 6항에 있어서,
상기 일관성 볼륨(coherency volume)의 원형 리스트에 저장된 일부 페이지 정보(page-info)가 새로이 저장된 페이지 정보(page-info)에 의해 덮어 쓰여지는 문제로 인하여 상기 서버 프로세스의 최근 접근 타임스탬프(last access timestamp)가 상기 일관성 볼륨(coherency volume)의 원형 리스트의 첫 번째 페이지 정보(page-info)의 타임스탬프(timestamp)보다 작은 경우,
상기 서버 프로세스는, 상기 버퍼에 있는 모든 페이지들을 상기 버퍼에서 삭제함으로써, 상기 버퍼에 있는 모든 페이지들을 데이터베이스와 일치시키는 것을 특징으로 하는 공유 디스크 모델을 사용하는 다중 서버 데이터베이스 관리시스템에서의 버퍼 일관성 관리방법
|
10 |
10
제 6항에 있어서,
상기 일관성 볼륨(coherency volume)의 원형 리스트에 저장된 모든 페이지 정보(page-info)의 타임스탬프(timestamp)가 오버플로우(overflow)된 경우, 상기 서버 프로세스의 최근 접근 타임스탬프(last access timestamp)가 상기 원형 리스트의 마지막 페이지 정보(page-info)의 타임스탬프(timestamp)보다 크면,
상기 서버 프로세스는, 상기 버퍼에 있는 모든 페이지들을 상기 버퍼에서 삭제함으로써, 상기 버퍼에 있는 모든 페이지들을 데이터베이스와 일치시키는 것을 특징으로 하는 공유 디스크 모델을 사용하는 다중 서버 데이터베이스 관리시스템에서의 버퍼 일관성 관리방법
|