SQL Server READ COMMITTED SNAPSHOT
와 SNAPSHOT
격리 수준 의 차이점을 조사 하고 다음 리소스를 살펴 보았습니다.
대부분의 응용 프로그램에서 다음과 같은 이유로 행 버전 관리를 사용하여 읽기 커밋 격리를 권장합니다.
스냅 샷 격리보다 tempdb 공간을 덜 사용합니다.
스냅 샷 격리는 행 버전 관리를 사용하여 커밋 된 격리 읽기에 적용 할 수없는 업데이트 충돌에 취약합니다. 스냅 샷 격리에서 실행중인 트랜잭션이 다른 트랜잭션에 의해 수정 된 데이터를 읽을 때 스냅 샷 트랜잭션에 의해 동일한 데이터로 업데이트하면 업데이트 충돌이 발생하고 트랜잭션이 종료되고 롤백됩니다. 행 버전 관리를 사용하는 읽기 커밋 된 격리의 문제는 아닙니다.
나는이 주제에 다소 익숙하지 않지만 위의 링크에서 두 가지 글 머리 기호를 이해할 수없는 것 같습니다.
이러한 모드에서 tempdb 공간이 다른 이유는 무엇입니까? 하나는 다른 것보다 더 세분화 된 버전을 저장합니까?
스냅 샷 격리가 업데이트 충돌에 더 취약한 이유는 무엇입니까?