728x90
1. 트랜잭션의 격리수준 간단 정리
: 트랜잭션에 일관성이 없는 데이터를 허용하도록 하는 수준을 정의한 것입니다.
2. WHY ?
: 원자적이고 독립적인 수행을 하도록 Locking이라는 개념이 등장하였지만 무조건적인 Locking
으로 동시에 수행되는 많은 트랜잭션들을 순서대로 처리하는 방식으로 구현되면 DB의 성능이
떨어지게 됩니다.
3. THEN
: WHY의 이유로 효율적인 Locking 방법이 필요하여 Isolation Level개념이 등장합니다.
레벨0: 트랜잭션에 처리중인 혹은 아직 커밋되지 않은 데이터를 다른 트랜잭션이 읽는 것을 허용
레벨1: 커밋이 이루어진 트랜잭션만 조회할 수 있다(SQL Server가 Default로 사용하고있음)
레벨2: 트랜잭션이 시작되기 전에 커밋된 내용에 대해서만 조회할 수 있는 격리수준
레벨3: 완벽한 읽기 일관성 모드를 제공한다. 수정 및 입력이 불가능하다.
Read Uncommitted -> Read Committed -> Repeatable Read -> Serialize
728x90
'IT Tech' 카테고리의 다른 글
Elastic Search 개념 / Wanna Be 컴잘알 (0) | 2021.03.15 |
---|---|
AWS EC2 Amazon Linux AMI에 Git, node.js 설치 / WannaBe컴잘알 (0) | 2021.03.15 |
디자인 패턴(Design Pattern)정리 / Wanna Be 컴잘알 (0) | 2021.03.14 |
RestAPI 란? / WannaBe 컴잘알 (0) | 2021.03.14 |
Ruby On rails 이란? / Wanna Be 컴잘알 (0) | 2021.03.14 |