1 |
1
분산 주기억장치 데이터베이스 시스템에 적용되는 중복제어 방법에 있어서, 읽기 트랜잭션이 발생하였는지 쓰기 트랜잭션이 발생하였는지를 확인하는 제 1 단계; 상기 제 1 단계의 확인 결과, 상기 읽기 트랜잭션이 발생한 경우 주 사본과 보조 사본을 구분하여 상기 주 사본에 대해서는 읽기 요청을 하고, 보조 사본에 대해서는 버전을 비교하여 최신버전이면 현재 사이트에서, 지난 버전이면 주 사이트로 읽기 요청을 보내어 상기 주 사본과 보조 사본에 대하여 읽기 트랜잭션을 수행하는 제 2 단계; 및 상기 제 1 단계의 확인 결과, 상기 쓰기 트랜잭션이 발생한 경우 상기 주 사본과 상기 보조 사본을 구분하여 주 사본에 대해서는 배타 로크를 요청하고 보조 사본에 대해서는 카운터 로크를 요청하여 이단계 완료규약(2-phase commit protocol)을 수행하고, 완료직전 보조 사본의 버전을 증가시키며 완료 후에 보조 사본으로 로그를 전송하는 하는 제 3 단계 를 포함하는 중복제어 방법
|
2 |
2
제 1 항에 있어서, 상기 제 2 단계는, 모든 로크를 획득하였는지를 확인하는 제 4 단계; 상기 제 4 단계의 확인 결과, 모든 로크를 획득하였으면 읽기 연산을 수행하여 로크를 풀고 트랜잭션을 완료하는 제 5 단계; 및 상기 제 4 단계의 확인 결과, 모든 로크를 획득하지 못하였으면 주 사본인지를 확인하여 주 사본이면 공유 로크를 요청하고, 주 사본이 아니면 버전을 비교하여 최신버전이면 현재 사이트에서, 지난 버전이면 주 사이트로 읽기 요청을 보내어 읽기 연산을 수행하는 제 6 단계 를 포함하는 중복제어 방법
|
3 |
3
제 2 항에 있어서, 상기 제 6 단계는, 주 사본인지를 확인하는 제 7 단계; 상기 제 7 단계의 확인 결과, 주 사본이면 공유 로크를 요청하여 상기 공유 로크가 성공했는지 확인하여, 확인 결과 성공했으면 제 4 단계로 진행하고, 성공하지 못하였으면 지연을 한 후 제 4 단계로 진행하는 제 8 단계; 및 상기 제 7 단계의 확인 결과, 주 사본이 아니면 버전을 확인하여 읽기 연산을 수행하는 제 9 단계 를 포함하는 중복제어 기법
|
4 |
4
제 3 항 에 있어서, 상기 제 9 단계는, 최신 버전인지를 확인하는 제 10 단계; 상기 제 10 단계의 확인 결과, 최신버전이면 공유 로크를 요청하고, 상기 로크가 성공했는지 확인하여, 확인 결과 성공하면 제 4 단계로 진행하고, 성공하지 못하면 지연을 한 후 제 4 단계로 진행하는 제 11 단계; 및 상기 제 10 단게의 확인 결과, 최신버전이 아니면 상기 모든 주 사이트로 로크 요청을하여 읽기 연산을 수행하는 제 12 단계 를 포함하는 중복제어 방법
|
5 |
5
제 1 항 내지 제 4 항중 어느 한 항에 있어서, 상기 제 3 단계는, 모든 로크를 획득했는지를 확인하는 제 13 단계; 상기 제 13 단계의 확인 결과, 모든 로크를 획득하였으면 모든 주 사이트로 로크 요청을 하여 쓰기 트랜잭션을 수행하는 제 14 단계; 및 상기 제 13 단계의 확인 결과, 모든 로크를 획득하지 못하였으면 주 사본인가를 확인하여 카운터 로크와 배타 로크를 요청하여 제 2 단계로 진행하는 제 15 단계 를 포함하는 중복제어 방법
|
6 |
6
제 5 항에 있어서, 상기 14 단계는, 모든 주 사이트로부터 로크 획득 성공을 확인하여 보조 사본 카운터를 증가시키고, 모든 주 사이트가 완료됨을 확인하고 보조 사본에 공유 로크를 건 트랜잭션을 취소하고 상기 보조 사본으로 로그를 전송하는 것을 특징으로 하는 중복제어 방법
|
7 |
7
제 5 항에 있어서, 상기 제 15 단계는, 주 사본인가를 확인하는 제 16 단계; 상기 제 16 단계의 확인 결과, 주 사본이면 배타 로크를 요청하여 제 2 단계로 진행하는 제 17 단계; 및 상기 제 16 단계의 확인 결과, 주 사본이 아니면 카운터 로크를 요청하여 제 2 단계로 진행하는 제 18 단계 를 포함하는 중복제어 방법
|
8 |
8
제 1 항 내지 제 4 항 중 어느 한 항에 있어서, 상기 버전은, 중복제어를 위해 카탈로그 정보에 주 사본에 대해서는 주 사본 버전을 부여하고 보조 사본에 대해서는 주 사본 버전과 보조 사본 버전을 부여하는 것을 특징으로 하는 중복제어 방법
|
9 |
9
대용량 프로세서를 구비한 분산 주기억장치 데이터베이스 시스템에, 읽기 트랜잭션이 발생하였는지 쓰기 트랜잭션이 발생하였는지를 확인하는 제 1 기능; 상기 제 1 기능의 확인 결과, 상기 읽기 트랜잭션이 발생한 경우 주 사본과 보조 사본을 구분하여 상기 주 사본에 대해서는 읽기 요청을 하고, 보조 사본에 대해서는 버전을 비교하여 최신버전이면 현재 사이트에서, 지난 버전이면 주 사이트로 읽기 요청을 보내어 상기 주 사본과 보조 사본에 대하여 읽기 트랜잭션을 수행하는 제 2 기능; 및 상기 제 1 기능의 확인 결과, 상기 쓰기 트랜잭션이 발생한 경우 상기 주 사본과 상기 보조 사본을 구분하여 주 사본에 대해서는 배타 로크를 요청하고 보조 사본에 대해서는 카운터 로크를 요청하여 이단계 완료규약(2-phase commit protocol)을 수행하고, 완료직전 보조 사본의 버전을 증가시키며 완료 후에 보조 사본으로 로그를 전송하는 하는 제 3 단계 을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
|