트랜잭션이란?


트랜잭션이란 데이터의 정합성을 보장하기 위해 고안된 방법으로, 다른 트랜잭션과 독립적이고 일관되고 신뢰할 수 있는 방식으로 처리되어야 한다.

트랜잭션의 목적

  • 오류로부터 복구를 허용하고 데이터베이스를 일관성 있게 유지하는 안정적인 작업 단위를 제공
  • 동시에 접근하는 여러 프로그램 간에 격리를 제공

ACID


트랜잭션의 목적을 달성하기 위해 트랜잭션이 가져야 하는 속성

Atomicity, 원자성

  • 트랜잭션에 포함된 모든 작업이 모두 성공하거나 실패해야 한다.

Consistency, 일관성

  • 트랜잭션을 실행한 전후에는 데이터의 일관성이 손상되지 않아야 한다.

Isolation, 격리성

  • 동시에 실행하는 여러 개의 트랜잭션이 서로 영향을 주지 않아야 한다.

Durability, 영속성

  • 커밋이 완료된 트랜잭션은 손상되지 않는 성질을 말한다.

References