본문

데이터베이스 트랜잭션(ACID)

반응형

# 데이터베이스 트랜잭션(ACID)


# 트랜잭션이란?

데이터베이스 내에 하나의 그룹으로 처리해야하는 명령문들을 모아놓은 작업단위.


즉, 데이터를 처리하는 하나의 작업단위 데이터베이스 시스템은 각각의 트랜잭션에 대해 원자성(Atomicity), 일관성(Consistency), 고립성(Isolation), 영구성(Durability)를 보장한다.



# 트랜잭션 특징

1. 원자성(Atomicity) 

한 트랜잭션의 모든 작업이 수행되든지, 아니면 하나도 수행되지 않아야 한다트랜잭션이 제대로 실행되지 않았으면 롤백(roll back)한다.


2. 일관성(Consistency)

모든 트랜잭션은 데이터베이스에서 정한 무결성 조건을 만족해야 한다. (무결성 : 데이터에 결손과 부정합이 없음을 보증하는 것을 의미)


3. 고립성(Isolation) 

두 개의 트랜잭션이 서로에게 영향을 미칠 수 없다. 트랜잭션이 실행되는 동안의 값은 다른 트랜잭션이 접근할 수 없어야 한다.


4. 영구성(Durability) 

트랜잭션이 성공적으로 끝난 뒤에는, (시스템 실패가 일어나더라도) 그 결과가 데이터베이스에 계속 유지되어야 한다.




 

반응형

공유

댓글