Atomic 원자성
- All or Nothing
- 트랜잭션 작업 단위를 일부분만 실행하진 않는다.
- 전부 실행하거나 하나도 실행하지 않는다.
- 수행하고 있는 트랜잭션에 의해 변경된 내역은 테이블에 유지하면서, 이전에 commit된 상태 또한 임시 영역에 저장함.
- 만약 현재 수행중인 트랜잭션에서 오류가 발생하면 임시 영역에 저장했던 상태로 rollback
- rollback segment : 이전 데이터들이 임시로 저장되는 영역
- save point를 지정해서, 확실하게 오류가 발생하지 않는 부분을 표시할 수 있음
- 중간에 오류가 나서 트랜잭션을 다시 수행할 때 이 지점으로 되돌아가면 됨
Consistency 일관성
- 트랜잭션이 성공적으로 완료되면 일관적인 DB상태를 유지하는 것
- 일관성이란 domain이나 primary key, foreign key, check 조건과 같은 constraint(제약조건)를 지키는 것
Isolation 격리성/고립성
- 트랜잭션 수행 시 다른 트랜잭션의 작업이 끼어들지 못하도록 보장하는 것
- 트랜잭션끼리 서로 간섭하지 못하도록
[데이터베이스] 격리성 관련 문제와 격리성 수준 (Isolation Level)
Durability 지속성
- 성공적으로 수행된 트랜잭션은 영원히 반영 되는 것
- commit 하면 현재 상태는 영원히 보장됨
References
'CS > DB' 카테고리의 다른 글
[데이터베이스] 인덱스 Index (0) | 2019.10.24 |
---|---|
[데이터베이스] 격리성 관련 문제와 격리성 수준 (Isolation Level) (0) | 2019.10.24 |