Search

ACID

태그

A : Atomicity (원자성)

1.
더이상 쪼개질 수 없는 가장 작은 단위(⇒ 원자)
a.
transaction의 단위
2.
모두 성공하거나 모두 실패, 중간이 없음
a.
Write 중에 실패했을 때
b.
어디서부터 실패했는지 파악해서 retry 하지 않고
c.
그냥 다시 retry 가능

C : Consistency (일관성)

1.
Transaction 전후로 데이터가 일정해야함
a.
오류가 없어야 한다는 뜻
b.
데이터베이스가 판단하기는 어렵고
c.
어플리케이션 단에서 관리해줘야함
2.
데이터베이스는 정의된 규칙에 따라 항상 유효한 상태
3.
예제
a.
마지막 한 개 남은 상품을 동시에 2명의 고객이 주문할 수 없도록
b.
카드 한도 초과되려고 하는데 동시에 2가지 아이템을 주문할 수 없도록

I : Isolation (고립성)

1.
동시에 발생하는 transaction이 서로 독립되어야함 ⇒ 다른 트랜잭션의 작업에 영향을 미치면 안 됨
2.

D : Durability (지속성)

1.
Commit 된 transaction은 손실되지 않는다.
2.
단일 시스템
3.
복제 시스템