트랜잭션(Transaction)
- DB의 상태를 변화시키기 해서 수행하는 작업의 단위
- 하나의 트랜잭션은 Commit되거나 Rollback 됨
- DB의 완전성을 보장하기 위한 것
- Commit(커밋) : 해당 Connection의 요청을 완료하고 특별한 에러가 없다면 결과를 DB에 반영
- RollBack(롤백) : 해당 Connection 수행 중 예기치 않은 에러가 발생하였다면 모든 과정을 취소하고 DB를 Connection이 수행되기 이전상태로 변경
Atomicity(원자성)
- 트랜잭션의 연산은 데이터베이스에 모두 반영되든지 아니면 전혀 반영되지 않아야 함
- 트랜잭션 내의 모든 명령은 반드시 완벽히 수행되어야 하며, 모두가 완벽히 수행되지 않고 어느하나라도 오류가 발생하면 트랜잭션 전부가 취소되어야 함
Consistency(일관성)
- 트랜잭션이 그 실행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 변환
- 트랜잭션의 작업 처리 결과가 항상 일관성이 있어야 함
Isolation(독립성,격리성)
- 트랜잭션이 동시에 병행 실행되는 경우 어느 하나의 트랜잭션 실행중에 다른 트랜잭션의 연산이 끼어들 수 없음
- 수행중인 트랜잭션은 완전히 완료될 때까지 다른 트랜잭션에서 수행 결과를 참조할 수 없음
Durability(지속성)
- 트랜잭션이 성공적으로 완료됬을 경우, 결과는 영구적으로 반영
'컴퓨터공학' 카테고리의 다른 글
DB index (인덱스) (0) | 2019.05.01 |
---|---|
추상화 (Abstraction) (0) | 2019.05.01 |
재귀함수 (0) | 2019.04.30 |
해싱 과 암호화 (0) | 2019.04.30 |
HTTP (0) | 2019.04.30 |