데이터베이스 관리 시스템 또는 유사한 시스템에서 하나의 논리적 기능을 수행하기 위한
작업의 기본단위 , 한꺼번에 모두 수행되어야 할 일련의 연산
쿼리를 하나의 묶음으로 처리해서 만약 중간에 실행이 중단됐을 경우, 처음부터 다시 실행하는 Rollback 을 수행하고, 오류없이 마치면 Commit 을 실행하는 단위
분해가 불가능 한 작업의 최소 단위
하나라도 실패할 경우 전체가 취소되어야 함
All or Nothing
트랜잭션이 실행 성공 후 항상 일관된 데이터베이스 상태를 보존해야 함
트랜잭션 실행 중 생성하는 연산의 중간 결과를 다른 트랜잭션이 접근 불가
성공이 완료된 트랜잭션의 결과는 영속적으로 데이터베이스에 저장
하나의 트랜잭션이데이터를 액세스 하는 동안, 다른 트랜잭션이 그 항목을 액세스 할 수 없도록 제어하는 기법
여러 개의 트랜잭션들이 실행을 하지 못하고 서로 무한정 기다리는 상태