데지덤

  1. 데이터관련 직무와 자격
    1. 데이터베이스 직무

    2. 데이터베이스 자격

  2. 데이터관련 학습방법
    1. 데이터베이스 개론 학습

    2. DBMS 학습

    3. 읽어볼만한 DB책

  3. 최신동향과 유명한 Things
    1. DB최신동향

    2. 데이터로 유명한 Things

  4. 데이터베이스 개념
    1. 데이터베이스 개념

    2. DBMS

    3. 데이터베이스 개발과운영

  5. 데이터베이스 설계(1/2)
    1. 데이터표준

    2. 데이터모델링

    3. 데이터모델 디자인패턴

  6. 데이터베이스 설계(2/2)
    1. 프로세스및상관모델링

    2. 정규화

    3. 반(역)정규화

    4. DB물리설계

  7. 인덱싱과 DB프로그래밍
    1. 인덱스와 해싱

    2. 관계연산

    3. DB언어

    4. SQL

    5. 데이터베이스 미들웨어

  8. 데이터베이스 운영
    1. 트랜잭션

    2. 병렬처리

    3. 데이터베이스 복구

    4. 데이터베이스 성능

    5. 병행제어(동시성제어)

  9. 분석계 및 빅데이터기술
    1. 데이터웨어하우스

    2. 데이터마이닝

    3. 빅데이터기술

  10. 데이터거버넌스
    1. 데이터거버넌스

    2. 데이터베이스 감리/진단

  11. 데이터베이스 종류와 보안
    1. 데이터베이스 종류

    2. 데이터베이스 보안

  12. DBMS
    1. 오라클

    2. SQL Server

    3. DB2

    4. Sybase

    5. Altibase

낙관적제어(Validation)

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

1. 동시성 제어를 위한 낙관적 검증(Validation) 기법

  가. 낙관적 검증 기법의 정의

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

  나. 낙관적 검증 기법의 특징

     -트랜잭션 수행 동안 그 트랜잭션을 위해 유지되는 데이터 항목들의 지역 사본에 대해서만 갱신이 이루어짐

     -트랜잭션 종료 시에 동시성을 위한 트랜잭션 직렬화가 검증되면 일시에 DB로 반영함

 

2. 낙관적 검증 기법 구성도

                                                      

 

Read Phase: R

판독 단계

트랜잭션 작업 구역에 지역 사본으로 만들 어서 읽기와 갱신 수행

Validation Phase : V

확인단계

실제 데이타베이스에 반영하기 전에 충돌 직렬 가능성 검사

Write phase : W

기록단계

확인 단계를 통과하면 트랜잭션의 실행결과는 실제로 데이타베이스에 반영. 그렇지 않으면 트랜잭션은 취소되고 재시작

 

 

3. 낙관적 검증 수행 단계

  가. 트랜잭션의 실행을 3단계로 나눔

    - R, V, W 로 나누어 실행

   나. 트랜잭션에 3가지 타임 스탬프 사용

타임스탬프

설명

Start(Ti)

-트랜잭션  Ti가 판독단계에 들어가면서 판독을 시작한 시간

Vaildation(Ti)

- 트랜잭션 Ti가 판독단계를 끝내고 확인을 시작한 시간

Finish(Ti)

- 트랜잭션 Ti가 최종 기록 단계를 완료한 시간

 

 

다. 확인 검사 조건

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

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

 

  라. 직렬 가능 순서

 

order of validation(Ti) (= TS(Ti))

validation(Ti) < validation(Tj) ⇒ <Ti,Tj>

  -이 기법의 직렬가능성 순서는 Validation(Ti) 타임스탬프의 값에 기초한 순서로 결정되므로 트랜잭션 Ti의 타임스탬프는 실제로 Validation(Ti)이라고 할 수 있음. 따라서 트랜잭션 Ti와 Tj에 대해 TS(Ti) < TS(Tj)이면 실행된 스케줄은 반드시 Ti가 Tj보다 먼저 나오는 직렬 스케줄 해야함.

 

4. Validation scheme의 장점 vs 단점 과 비교

  가. Validation기법의 장점 / 단점

    - 교착상태가 없슴( no deadlock)

    - 연쇄 복귀가 없슴( no cascading rollback)

    - 순환적 재시작(cyclic restart (starvation))

예)

 

나. 비관적자금 개념과 낙관적 자금개념의 비교 그림

Figure 1. Pessimistic locking concept
 

Figure 2. Optimistic locking concept

 

 

 

 

 

 

댓글