DB/[이론]

동시성 제어

씩씩한 IT블로그 2022. 3. 10. 12:46
반응형

동시성 제어란

- 다중 사용자 환경을 지원하는 데이터베이스 시스템에 여러 트랜젝션들이 성공적으로 동시에 실행될 수 있도록 하는것

- 트랜젝션의 직렬화를 수행(트랜젝션이 동시에 수행되더라도 그 결과가 순차적으로 수행되도록 만듦)

- 무결성보장, 공유도 최대, 응답시간 최소, 시스템 활동의 최대 보장

 

동시성 제어 하지 않을 경우 문제점

- 갱신 손실 : 이전 트렌젝션이 종료하기 전에 다른 트랜젝션이 갱신 값을 덮어 쓰는 경우

- 오손 데이터 읽기 : 트랜젝션의 중간 수행결과를 다른 트랜잭션이 참조

- 모순성 : DB가 일관성이 없는 상태로 남음

- 연쇄복귀 : 복수의 트랜잭션이 데이터 공유 시 특정 트랜잭션이 처리를 취소할 경우 다른 트랜잭션이 처리한 부분에 대해 취소불가능

- 반복할 수 없는 읽기 : 같은 질의를 수행하여도 그 사이 다른 트랜잭션이 값을 수정하는 경우 두 질의 결과가 다르게 나타나는 현상

 

동시성 제어 기법

- 잠금기법

- 타임스탬프 기법

- 다중버전 기법

- 검증 기반 기법

반응형