트랜잭션은 낙관적인 다중 버전 동시성 제어 형식을 사용하여 메모리 최적화 테이블에 액세스합니다. 즉, 데이터의 버전이 다릅니다. 각 트랜잭션은 동시에 실행되는 다른 트랜잭션과 독립적으로 자체 트랜잭션 일치 버전의 데이터베이스에서 작동합니다. 또한 트랜잭션은 다른 동시 트랜잭션과 충돌하지 않을 것이라는 낙관적 가정 하에 작동합니다. 이렇게 하면 잠금을 사용할 필요가 없지만 시스템에서 충돌을 감지하고 충돌하는 트랜잭션 중 하나를 종료해야 합니다. 충돌은 쓰기-쓰기 트랜잭션 및 읽기/쓰기 트랜잭션에 대해서만 발생할 수 있습니다. 쓰기-쓰기 충돌이 있는 경우 하나의 쓰기 트랜잭션이 종료됩니다.
메모리 최적화 테이블의 동시성 제어와 READ_COMMITTED_SNAPSHOT 및 SNAPSHOT 트랜잭션 격리 수준에 대한 디스크 기반 테이블의 동시성 제어 간에는 유사점이 있습니다. (디스크 기반 테이블에 대한 자세한 내용은 데이터베이스 엔진의 행 버전 관리 기반 격리 수준을 참조하세요.)
이 섹션의 항목
메모리 최적화 테이블의 트랜잭션에 대한 이 섹션에는 다음 항목이 포함되어 있습니다.
자세한 내용은 트랜잭션 내구성 제어를 참조하세요.