반응형
Isolation level(격리 수준) 이란?
어떤 트랜잭션이 다른 트랜잭션에서 변경한 데이터를 어떤 수준으로 볼 수 있도록 하는지에 대한 레벨이다.
격리 수준에는 4가지 레벨이 존재한다. (아래로 내려갈수록 격리 수준은 강해지고 동시처리능력이 떨어진다.)
- Read Uncommitted
- Read Committed
- Repeatable Read
- Serializable
Read Uncommitted
- COMMIT되지 않은 데이터에도 접근이 가능한 수준이다.
- Dirty Read가 발생할 수 있다.
Read Committed
- COMMIT 된 데이터에만 접근할 수 있는 수준이다.
- NON REPEATABLE READ가 발생할 수 있다.
- 대부분의 RDB에서 기본값으로 사용하고 있다.
Repeatable Read
- 트랜잭션 시작 전 COMMIT 된 데이터에만 접근할 수 있는 수준이다.
- Phantom Read가 발생할 수 있다.
Serializable
- 특정 트랜잭션이 접근중인 테이블에 다른 트랜잭션은 접근이 불가능한 수준이다.
반응형