트랜잭션

트랜잭션은 데이터베이스에서 하나의 논리적 작업 단위이다.

예시:

A 계좌에서 10만원 출금 / B 계좌에 10만원 입금

둘 다 성공해야 정상이고, 하나라도 실패하면 전체가 취소되어야 한다.

핵심 암기

트랜잭션 / 하나의 논리적 작업 단위


ACID

속성뜻의미
Atomicity원자성모두 실행되거나 모두 취소
Consistency일관성실행 전후 DB 상태가 일관됨
Isolation고립성동시에 실행돼도 서로 간섭하지 않음
Durability지속성완료 결과는 영구 반영

일관성

일관성은 트랜잭션 실행 전후 데이터베이스 상태가 모순 없이 유지되는 것이다.

예시:

계좌 이체 전 전체 금액 100만원 / 계좌 이체 후 전체 금액도 100만원

돈이 갑자기 생기거나 사라지면 일관성이 깨진 것이다.

핵심 암기

일관성 / 작업 전후 DB 상태가 모순 없이 유지


충돌

충돌은 여러 작업이 같은 데이터를 동시에 수정하려 할 때 발생하는 문제이다.

예시:

작업 A: 재고 10개를 8개로 수정
작업 B: 재고 10개를 9개로 수정

동시에 처리되면 최종 결과가 꼬일 수 있다.

핵심 암기

충돌 / 같은 데이터를 동시에 수정 / 결과 꼬임