본문 바로가기
정보관리기술사/데이터베이스

병행 제어 기법 - 낙관적 병행 제어

by 두음달인 2022. 8. 23.
반응형

Optimistic Concurrency Control

 

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

 

  • 트랜잭션 수행 동안 그 트랜잭션을 위해 유지되는 데이터 항목들의 지역 사본에 대해서만 갱신
  • 트랜잭션 종료 시에 동시성을 위한 트랜잭션 직렬화가 검증되면 일시에 DB로 반영
  • 장기 트랜잭션 철회시 자원낭비 가능성이 있어, 동시 사용 빈도가 낮은 시스템에서 주로 사용

 

과정 동작
Read Phase 검증 없이 트랜잭션 수행
Validation Phase 종료 시 동시성 검증 수행
Execution Phase
문제 없을 시 기록, 동시성 문제 발견 시 철

 

 

낙관적 병행제어(Optimistic Concurrency Control)

 

  • 트랜잭션 수행 동안은 어떠한 검사도 하지 않고, 트랜잭션 종료 시에 일괄적으로 검사
  • 트랜잭션 수행 동안 그 트랜잭션을 위해 유지되는 데이터 항목들의 지역 사본에 대해서만 갱신
  • 트랜잭션 종료 시에 동시성을 위한 트랜잭션 직렬화가 검증되면 일시에 DB로 반영

 

cf. 비관적 병행제어

Pessimistic Concurrency Control

 

  • '낙관적 병행제어'란 충돌이 있을 것을 가정한 기존 로킹 방식에 대한 다른 접근
  • 기존의 로킹 방식 등은 '비관적 병행제어'로 분류 가능(해당 용어는 잘 사용하지 않음)

참고 자료

 

낙관적 병행제어 - IT위키 (itwiki.kr)

 

IT위키

IT에 관한 모든 지식. 함께 만들어가는 깨끗한 위키

itwiki.kr

 

지식덤프 (jidum.com)

 

지식덤프

1. 동시성 제어를 위한 낙관적 검증(Validation) 기법   가. 낙관적 검증 기법의 정의      -트랜잭션 수행 동안은 어떠한 검사도 하지 않고, 트랜잭션 종료 시에 일괄적으로 검사하는 기법   나.

www.jidum.com

 

반응형

댓글