Achieving Snapshot Isolation
In this lesson, we will learn the multi-version concurrency control mechanism, and discuss how it helps to achieve snapshot isolation.
Multi-version concurrency control (MVCC)
Multiversion Concurrency Control (MVCC) is a technique where multiple physical versions are maintained for a single logical data item. As a result, update operations do not overwrite existing records, but they write a new version of these records. Read operations can then select a specific version of a record, possibly an older one.
This is in contrast with the previous techniques, where updates are performed in place and there is a single record for each data item that can be accessed by read operations.
As the name implies, this technique focuses on the multi-version aspect of storage so that it can be used, theoretically, with both optimistic and pessimistic schemes.
However, most variations use an optimistic concurrency control method to leverage the multiple versions of an item from transactions that run concurrently.
Create a free account to view this lesson.
By signing up, you agree to Educative's Terms of Service and Privacy Policy