발전을 위한 기록

[정보처리산업기사] 트랜잭션(개념, 특성, 연산, 상태) 본문

정보처리

[정보처리산업기사] 트랜잭션(개념, 특성, 연산, 상태)

릴릴2 2022. 4. 20. 15:09

트랜잭션(Transaction)이란?

데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위이다.


 특성 

👉 Atomicity(원자성)  

트랜잭션의 연산은 DB에 모두 반영되도록 완료되거나 전혀 반영되지 않도록 복구 되어야함

 

👉 Consistency(일관성)  

트랜잭션이 실행을 성공적으로 완료하면 항상 일관성 있는 데이터베이스 상태로 변환함

 

👉 Isolation(독립성)  

둘 이상의 트랜잭션이 병행 실행되는 경우 어느 하나의 트랜잭션 실행중에는 다른 트랜잭션의 연산이 끼어들 수 없음

 

👉 Durability(영속성,지속성) 

성공적으로 완료된 트랜잭션의 결과는 시스템이 고장나도 영국적으로 반영되어야 함

 


 연산 

Commit 

한개의 트랜잭션에 대한 작업이 성공적으로 끝나고 데이터베이스가 일관된 상태에 있을 때 갱신 연산이 완료 되었다고 트랜잭션 관리자에게 알리고 최종 결과를 데이터베이스에 반영하는 연산

 

Rollback

하나의 트랜잭션이 비정상적으로 종료되어 데이터베이스의 일관성을 잃었을 때 트랜잭션은 지금까지 실행한 연산의 결과를 취소하고 트랜잭션 실행전 상태로 돌아가는 연산

 


 상태 

👉 활성화(Activity) 

트랜잭션이 작업을 시작하여 실행중인 상태

 

👉 실패(Failed) 

트랜잭션에 오류가 발생하여 실행이 중단된 상태

 

👉 철회(Aborted) 

트랜잭션이 비정상적으로 종료되어 Rollback연선을 수행한 상태

 

👉 부분완료(Partially commited) 

트랜잭션의 마지막 연산까지 실행하고 commit요청이 들어온 직후의 상태

 

👉 완료(Commited) 

트랜잭션이 성공적으로 종료되고 commit연산을 실행한 후의 상태

728x90