아카이브

트랜잭션 (Transaction) 본문

데이터베이스

트랜잭션 (Transaction)

주멘이 2018. 6. 18. 17:24

트랜잭션 (Transaction) ?

- DB 내에서 한번에 수행되어야할 일련의 연산들

- 시스템에서 사용되는 쪼갤 수 없는 업무처리의 단위

- 전부 COMMIT 되거나, 전부 ROLLBACK 되거나

- ex) 쇼핑몰 결제 시, 예상치 못한 오류로 금액만 지불되고 주문 처리가 안됐으면 ? 

전부 ROLLBACK을 시켜야 함

- 트랜잭션의 4가지 특성 (ACID)

1) Atomicity - 원자성 : All or Nothing

2) Consistency - 일관성 : 트랜잭션이 실행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로                                          유지하는 것을 의미

               ex) 무결성 제약을 위반하는 트랜잭션은 중단

3) Isolation - 격리성 : 트랜잭션을 수행 시 다른 트랜잭션의 연산 작업이 끼어들지 못하도록 보장하는 것을 의미

              트랜잭션 밖에 있는 어떤 연산도 중간 단계의 데이터를 볼 수 없음

4) Durabillity - 영속성 : 성공적으로 수행된 트랜잭션은 영원히 반영되어야 함

            시스템 문제, DB 일관성 체크 등을 하더라도 유지되어야 함

'데이터베이스' 카테고리의 다른 글

정규화란?  (0) 2018.06.18
JOIN의 종류와 차이점  (0) 2018.06.18
INDEX 란?  (0) 2018.06.18
DDL, DML, DCL  (0) 2018.06.18
Clustered Index VS Non-Clustered Index  (0) 2018.06.09