본문으로 건너뛰기

데이터베이스 트랜잭션

· 약 3분

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

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

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

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

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

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

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

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

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

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

분산DB 트랜잭션 고려사항

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