MVCC(다중 버전 범퍼카 토토성 제어)는 고급 기술입니다. 다중 사용자의 데이터베이스 성능을 향상시키는 기술 환경. 바딤 미케예프(
<vadim@krs.ru) 제공됨 구현은PostgreSQL.
잠금을 사용하는 대부분의 다른 데이터베이스 시스템과 달리 범퍼카 토토성 제어,포스트그레SQL다음을 통해 데이터 일관성을 유지합니다. 다중 버전 모델을 사용합니다. 즉, 쿼리하는 동안 데이터베이스 각 트랜잭션은 데이터의 스냅샷을 확인합니다(a데이터베이스 버전) 얼마 전과 마찬가지로 기본 데이터의 현재 상태에 관계없이. 이 일관되지 않은 데이터를 보지 않도록 트랜잭션을 보호합니다. (다른) 동시 트랜잭션 업데이트로 인해 발생할 수 있습니다. 동일한 데이터 행 제공거래 격리각 데이터베이스 세션마다.
다중 버전과 잠금 모델의 주요 차이점은 다음과 같습니다. 데이터 쿼리(읽기)를 위해 획득한 MVCC 잠금에서는 데이터 쓰기 및 읽기를 위해 획득한 잠금과 충돌합니다. 쓰기를 차단하지 않으며 쓰기를 차단하지 않습니다.