낙관적 검증(Validation) 기법 [정의] 트랜잭션수행동안은어떠한검사도하지않고, 트랜잭션종료시일괄적으로검사하는기법
[동작매커니즘]
read phase(검증없이트랜젝션수행)-validation phase(트랜젝션종료시동시성검증수행)-excution phase(문제없으면디스크반영, 아니면철회)
Read Phase, Validation Phase, Execution Phase
판독, 확인, 기록(디스크에반영)하는 3단계.
직렬화확인후반영
유효성검사 판확기
토픽 이름() 낙관적 검증(Validation) 기법
분류 DB > 동시성 제어 > 낙관적 검증(Validation) 기법
키워드(암기) Read Phase, Validation Phase, Execution(Write) Phase
판독, 확인, 기록(디스크에 반영)하는 3단계. 직렬화 확인 후 반영
암기법(해당경우) RVE(알배)

 

기출문제

번호 문제 회차
1 데이터베이스 동시성 제어기법인 2PL(2 Phase Locking), Timestamp Ordering, 낙관적 검증기법을 비교 설명하시오 합숙.공통.2014.01
(2일차)
2 트랜잭션 동시성 제어기법에 대해 설명하시오 모의.정보관리.2017.04
(1교시)

 

I. 일괄 검사, 낙관적 검증(Validation) 기법의 개요

 . 낙관적 검증 기법의 정의

 - 트랜잭션 수행 동안은 어떠한 검사도 하지 않고, 트랜잭션 종료 시에 일괄적으로 검사하는 방법

- 트랜잭션을 실행하는 동안 모든 갱신은 지역 사본에만 반영되고 트랜잭션 종료 확인 단계를 통해 직렬 가능성에 위반되지 않으면 실행하고 위반되면 복귀하는 기법

 . 낙관적 검증 기법의 특징

- 교착상태가 발생하지 않음(no deadlock)        - 연쇄 복귀가 없음(no cascading rollback)

- 순환적 재시작(cyclic restart, starvation)         - 데이터 지역 사본 갱신 (트랜잭션 수행 중일 경우)

- 일시 반영 (트랜잭션 종료 )

 

II. 낙관적 검증 기법의 개념도 처리단계

. 낙관적 검증 기법의 개념도

 

- 데이터베이스 연산 실행 검사 발생하는 오버헤드를 최소화하기 위해 낙관적 검증 기법 활용

. 낙관적 검증 기법의 처리 단계 설명

단계 설명
판독 단계
(Read Phase : R)
- 트랜잭션의 모든 갱신은 사본에 대해서만 수행하고 실제 데이터베이스에 대해서는 미수행
확인 단계
(Validation Phase : V)
- 판독 단계에서 사본에 반영된 트랜잭션의 실행 결과를 데이터베이스 반영 전 직렬 가능성 위반여부 확인
기록 단계
(Write Phase : W)
- 확인 단계를 통과하면 트랜잭션의 실행 결과를 데이터베이스에 반영
- 확인 단계를 실패하면 실행 결과를 취소하고 트랜잭션은 복귀

III. 낙관적 검증 기법의 트랜잭션 유효성 검사

조건 설명 타임스탬프(Time-stamp)

Finish(Ti) < Start(Tk) Ti Tk 시작 전에 완성 ŸStart(Ti): 트랜잭션 Ti 판독단계에 들어가면서 실행을 시작한 시간
ŸValidation(Ti): 트랜잭션 Ti 판독단계를 끝내고 확인을 시작한 시간


ŸFinish(Ti): 트랜잭션 Ti 최종 기록 단계를 완료한 시간

Start(Tk) < Finish(Ti) < Validation(Tk)
and
Write-set(Ti) Read-set(Tk)


Write-set(Ti) Read-set(Tk)
and
Write-set(Ti) Write-set(Tk)

- TS(Ti) < TS(Tk) 관계에 있는 모든 트랜잭션 Ti 에 대해 위 3 가지 조건 하나만 만족하면 트랜잭션들 간에 간섭이 없는 것으로 보고 확인을 성공 (TS: transaction)

- 하나라도 만족하지 못하면 트랜잭션 간의 간섭이 일어났을 가능성이 있기 때문에 실패

 

IV. 낙관적 병행제어기법으로 생성된 직렬 가능 스케줄 예제

“끝”

반응형

'정보관리기술사 > DB_데이터분석' 카테고리의 다른 글

1차 정규화  (0) 2023.08.10
함수적 종속성(FD)  (0) 2023.08.09
다중 버전 동시성 제어(MVCC)  (0) 2023.08.06
Timestamp Ordering  (0) 2023.08.05
2PL or 2PLP(2 Phase Locking)  (0) 2023.08.04

+ Recent posts