데이터베이스

트랜잭션_동시성 제어_로킹 기법_다중 단위 크기 로킹(multiple granularity locking), 로크 lock, 호환성 행렬

스윙스윙 2021. 8. 21. 11:56

▣ 트랜잭션_동시성 제어_로킹 기법_다중 단위 크기 로킹(multiple granularity locking), 로크 lock, 호환성 행렬

잠금 호환성에 따라 여러 트랜잭션이 동시에 같은 리소스에 대한 잠금을 획득할 수 있는지 여부가 결정됨
이미 다른 트랜잭션에서 리소스를 잠근 경우에는 요청된 잠금 모드가 기존 잠금 모드와 호환되어야만

새 잠금 요청이 허용될 수 있음

 

요청된 잠금의 모드가 기존 잠금과 호환되지 않을 경우 새 잠금을 요청하는 트랜잭션은 기존 잠금이 해제되거나 
잠금 시간 초과 간격이 만료될 때까지 기다림(배타적 잠금과 호환되는 잠금 모드는 없음)  

 

배타적(X) 잠금이 설정되어 있는 동안 다른 트랜잭션은 배타적(X) 잠금이 해제될 때까지 해당 리소스에 대해 공유, 
업데이트 또는 배타적 잠금을 비롯한 어떠한 유형의 잠금도 획득할 수 없음  

 

리소스에 공유(S) 잠금이 적용된 경우에는 첫 번째 트랜잭션이 완료되지 않아도 
다른 트랜잭션이 해당 항목에 대해 공유 잠금 또는 업데이트(U) 잠금을 획득할 수 있음 
그러나 공유 잠금이 해제될 때까지는 다른 트랜잭션이 배타적 잠금을 획득할 수 없음


2014년 71번

정답 : 3번

 

 


2019년 62번

정답 : 2번

로킹 기법은 근본적으로 교착상태(deadlock) 문제를 내포하고 있음

 

 


2019년 71번

정답 : 1번