반응형
1. 트랜잭션 정의
- 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 연산 집합으로서 작업의 단위
- 데이터베이스 관리 시스템에서 회복 및 병행 수행 시 처리되는 논리적 단위
2. 트랜잭션의 종류
- COMMIT : 트랜잭션 처리가 정상적으로 종료되어 모든 변경 작업 반영
- ROLLBACK : 트랜잭션 처리가 비정상적으로 종료되어 모든 변경 작업을 취소하고 이전 상태로 되돌림
3. 트랜잭션의 특징(ACID)
- 원자성(Atomicity)
- 트랜잭션은 완벽히 실행되어 COMMIT 연산을 수행하거나 도중에 오류 발생으로 ROLLBACK 연산을 수행 되어 모두 취소하여 원래의 상태로 되돌려야 함 (두 연산 중 하나는 수행이 되어야 함)
- 일관성(Consistency)
- 트랜잭션 수행이 성공적이면 언제나 일관성 있는 데이터베이스 상태로 변환함
- 시스템이 가지고 있는 고정 요소는 트랜잭션 수행 전과 수행 완료 후의 상태가 동일해야함
- 독립성(Isolation)
- 한 트랜잭션이 데이터를 갱신하는 동안 완료되기 전까지 다른 트랜잭션들이 갱신 중인 데이터에 접근하지 못하도록 해야함
- 동시에 수행이 되더라도 순차적으로 실행이 되어야함
- 영속성(Durability)
- 트랜잭션 실행이 성공적으로 완료된 후에는 오류가 발생 했더라고 트랜잭션에 의해 변경된 내용은 계속 보존되어야함
- 성공적으로 완료된 트랜잭션의 결과는 영구적으로 반영되어야 함
4. 트랜잭션의 상태
- 활동 : 트랜잭션이 실행중인 상태
- 실패 : 트랜잭션 실행 중 오류 발생으로 중단 상태
- 철회 : 트랜잭션이 비정상적으로 종료되어 ROLLBACK 수행
- 부분완료 : 트랜잭션의 마지막 연산까지 수행하였지만 COMMIT 전 상태
- 완료 : 트랜잭션이 성공적으로 완료되어 COMMIT 연산을 수행한 상태
반응형
'정보처리산업기사_실기_기록용' 카테고리의 다른 글
[업무 프로세스] 정보 전략 계획 수립 (0) | 2021.10.15 |
---|---|
[데이터베이스] 병행 제어(Concurrency Control) (0) | 2021.10.15 |
[데이터베이스] 정규화 (0) | 2021.10.09 |
[데이터베이스] 정규화 - 함수적 종속 (0) | 2021.10.07 |
[데이터베이스] SQL - DCL (0) | 2021.10.05 |