오라클 읽기 모드 (Consistent vs Current 모드 읽기)

이형석·2025년 5월 24일

오라클 공부

목록 보기
6/6

오라클 읽기 모드

Consistent 모드 읽기 : 마지막 commit 시점(CR블록)으로 되돌려서 읽기
* 현재 쿼리 실행시점(쿼리SCN) 이전의 커밋 시점 중 마지막 commit 시점(커밋SCN)
Current 모드 읽기 : 다른 트랜잭션이 데이터를 변경하는 중에 commit 안돼도 상관없이 그냥 현재 상태(Current 블록) 그대로 읽기

동시성 문제 해결방법 비교

Read 동시성 문제

* Dirty Read 문제에 해당
SQL Server : 락킹 (공유락 Shared Lock)
Oracle : Consistent 읽기모드 이용
* 현재 변경사항이 커밋되지 않은 상태라면, 마지막 커밋상태로 되돌려서 읽으므로 읽기일관성 유지 가능

Update 동시성 문제

SQL Server : 락킹
Oracle : Current 읽기모드 이용 + 락킹(트랜잭션 Lock)

Consistent 모드 읽기의 장점 : Lock을 사용하지 않으므로, 동시성이 높음


참고 - 오라클 성능고도화 원리와 해법 1권 1-7 Consistent vs Current 모드 읽기 61p~76p
2장 트랜잭션과 Lock 99p~153p

profile
금융IT 개발자

0개의 댓글