문제
데이터베이스에서 동시성 제어를 위해 사용되는 다단계 로킹(Multi-Granularity Locking) 기법에서 의도 로킹(Intention Lock)의 두 가지 주요 유형과 각각의 역할을 설명하고, 이 기법이 해결하는 성능 문제를 서술하시오.
정답
의도 공유 로킹(IS)은 하위 노드에 공유 로킹을 걸 의도를 표시하며, 의도 배타 로킹(IX)은 하위 노드에 배타 로킹을 걸 의도를 표시한다. 다단계 로킹은 데이터베이스의 계층 구조(데이터베이스-테이블-페이지-레코드)에서 상위 레벨에 의도 로킹을 걸어 하위 레벨의 로킹 충돌을 미리 감지함으로써 전체 하위 노드를 검사하지 않아도 되는 성능 향상을 제공한다.
의도 공유 로킹의도 배타 로킹ISIX계층 구조성능 향상충돌 감지
해설
다단계 로킹은 계층적 데이터 구조에서 효율적인 로킹을 위한 기법이다. 의도 로킹을 통해 상위 레벨에서 충돌을 미리 감지하여 불필요한 하위 노드 탐색을 방지한다.