mvcc.hlp
上传用户:blenddy
上传日期:2007-01-07
资源大小:6495k
文件大小:1k
源码类别:

数据库系统

开发平台:

Unix_Linux

  1. .pgaw:Help.f.t insert end 
  2. "Multi-Version Concurrency Control" {title} "
  3. Multi-Version Concurrency Control (MVCC) is an advanced technique for
  4. improving database performance in a multi-user environment. " {} "Vadim Mikheev" {bold} " provided the implementation for Postgres. 
  5. " {} "Introduction" {bold} "
  6. Unlike most other database systems which use locks for concurrency control, Postgres maintains data consistency by using a multiversion model. This means that while querying a database each transaction sees a snapshot of data (a database version) as it was some time ago, regardless of the current state of the underlying data. This protects the transaction from viewing inconsistent data that could be caused by (other) concurrent transaction updates on the same data rows, providing transaction isolation for each database session. 
  7. The main difference between multiversion and lock models is that in MVCC locks acquired for querying (reading) data don't conflict with locks acquired for writing data and so reading never blocks writing and writing never blocks reading. 
  8. " {} "Isolation levels" {link isolation}