동시접근 제어하기
- transaction isolation: 각각의 트랜잭션 입장에서 보면 현재 진행중인 트랜잭션이 자기 밖에 없는 것으로 보이는 것.
- 예전에는 이것을 locking으로 보장했었다. 트랜잭션들이 특정 데이터에 대한 lock을 가지고 다녔디.
- multiversion concurrency control(MVCC): 몇몇 오라클이나 PostreSQL와 같은 DB는 transaction isolation을 이걸 사용해서 구현했다.
- DB가 동시 접근 제어를 어떻게 구현했는지는 하이버네이트나 Java Persistence 애플리케이션을 사용할 때 가장 중요한 사항이다.
- 낙천적인 동시접근 제어
- Isolation 단계 더 높이기