트랜잭션이 일어나는 데이터베이스의 기본 속성
Atomic : 원자성. 하나의 트랜잭션 원자는 실패, 성공 즉 0,1만 가진다.
Consistency : 트랜잭션에 의해 바뀐 데이터는 일관성을 가진다(시스템 속성을 똑같이 유지함)
Isolation : 트랜잭션 수행 중에 다른 트랜잭션이 영향을 끼치지 않는다.
Durability : 바뀐 데이터는 영구적으로 유지한다
ACID 모두 구현하는 건 힘듬. CPU 선점이나 자원할당 등 다양한 이슈로 한 트랜잭션이 제대로 처리되지 않을 수 있음. 그래서 Lock 을 사용함. mysql은 테이블 락을 사용함.
몽고디비는 트랜잭션을 지원한다. 4버전부턴가 트랜잭션 지원함. 근데 트랜잭션이 replica set에서만 지원된다고 이야기 함
몽고디비는 document형 db이고 데이터를 객체 구조로 유연하게 다룰 수 있음
https://kay0426.tistory.com/52