트랜잭션(Transaction)

newVelog·2023년 11월 28일
0

CS

목록 보기
4/31

트랜잭션(Transaction)

데이터베이스의 상태를 변경시키기 위해 수행하는 작업 단위

데이터베이스의 상태를 변경시킨다는 이야기는 SELECT, UPDATE, INSERT, DELETE 와 같은 행동을 뜻한다.

이런 트랜잭션은 상황에 따라 여러 개가 만들어질 수 있다.
그 하나의 트랜잭션은 Commit (저장) 되거나 Rollback (철회)될 수 있다.

트랜잭션의 특징

트랜잭션의 4가지의 특징에 대한 ACID 설명은 아래 링크로 대체한다.
ACID 설명

트랜잭션의 Commit 과 Rollback

  • Commit
    하나의 트랜잭션이 성공적으로 끝나서 데이터베이스가 일관성있는 상태에 있음을 의미한다.

  • Rollback
    트랜잭션의 원자성이 깨질 때, 즉 하나의 트랜잭션 처리가 비정상적으로 종료 되었을 때의 상태를 뜻한다.
    Rollback 이 이뤄진다면 트랜잭션을 다시 실행하거나 부분적으로 변경된 결과를 취소할 수 있다.

트랜잭션의 상태

트랜잭션은 논리적으로 5가지의 상태에 있을 수 있다.

  • Active
    트랜잭션이 현재 실행 중인 상태
  • Failed
    트랜잭션이 실행되다 오류가 발생해서 중단된 상태
  • Aborted
    트랜잭션이 비정상 종료되어 Rollback 이 수행된 상태
  • Partially Committed
    트랜잭션의 연산이 마지막까지 실행되고 Commit이 되기 직전 상태
  • Committed
    트랜잭션이 성공적으로 종료되어 Commit 연산을 실행한 후의 상태

0개의 댓글