본문 바로가기

컴퓨터 사이언스/데이터베이스

[10분 테코톡] 트랜잭션 with 예지니어스

 

트랜잭션

- 데이터베이스의 상태 변화를 수행하는 작업들의 논리적 단위

- 커밋과 롤백을 수행

 

트랜잭션의 성질

- 원자성(Atomicity): 트랜잭션은 가장 작은 하나의 단위, 즉 원자가 되어 전체가 실패하거나 전체가 성공해야 한다.

- 일관성(Consistency): 트랜잭션 처리 후, 데이터베이스는 일관성을 유지해야 한다.

- 독립성(Isolation): 둘 이상의 트랜잭션이 실행될 때, 어떠한 트랜잭션도 다른 트랜잭션 연산에 끼어들 수 없다.

- 영속성(Durability): 트랜잭션이 성공된 후, 결과는 영구히 반영되어야 한다.

 

트랜잭션 격리 수준

- Read Uncomitted: 트랜잭션에서 아직 Commit하지 않은 데이터를 다른 트랜잭션이 읽는 것을 허용함

- Read Commited: 트랜잭션에서 Commit한 데이터를 다른 트랜잭션이 읽는 것을 허용함

- Repeatable Read: 한 트랜잭션에서 사용하는 데이터에 수정이 불가능함

- Serializable: 한 트랜잭션에서 사용하는 데이터에 수정 및 입력이 불가능함