본문으로 건너뛰기

데이터베이스 트랜잭션

· 약 3분

데이터베이스 트랜잭션의 개념

  • 데이터의 정확환 일관성과 무결성을 보장하기 위해 완전히 종료해야하는 데이터베이스 처리의 논리적 작업 단위

데이터베이스 트랜잭션의 특징, 상태전이도, 종료기법

데이터베이스 트랜잭션의 특징

구분내용보장기법
원자성연산전체가 처리되거나 처리되지 않아야함Commit, Rollback
일관성트랜잭션 성공 후 일관된 데이터베이스 상태 유지무결성 제약조건, 동시성 제어
고립성트랜잭션 실행 중 다른 트랜잭션 접근 불가Isolation Level, Locking, 분산 트랜잭션
지속성성공된 트랜잭션은 어떤 고장에도 손실되지 않고 영속 저장회복기법, 회복컴포넌트 관리
  • 트랜잭션 특징에 따라 트랜잭션 상태 변경

데이터베이스 트랜잭션 상태전이도

시작, 부분적완료, 완료, 실패, 철회

  • 트랜잭션이 정상적으로 상태 전이되어 작업을 수행하기 위해 ACID와 직렬성 보장 필요

데이터베이스 트랜잭션 종료기법

구분기법내용
명시적 처리Commit변경 내용을 디스크에 영구 저장, 일관적 상태
Rollback중지 또는 철최하고 갱신 작업취소, 비일관적 상태
묵시적 처리정상종료Commit과 동일하나 새 트랜잭션 다시 시작 안함
비정상종료Rollback과 동일하나 프로그램 종료

분산DB 트랜잭션 고려사항

  • BASE 특성에 중점을 두어 트랜잭션 구현 및 관리 필요