Multi-Version Concurrency Control (MVCC) es una t�cnica avanzada para mejorar las prestaciones de una base de datos en un entorno multiusuario. Vadim Mikheev ha proporcionado la implementaci�n para Postgres.
A diferencia de la mayor�a de otros sistemas de bases de datos que usan bloqueos para el control de concurrencia, Postgres mantiene la consistencia de los datos un modelo multiversi�n. Esto significa que mientras se consulta una base de datis, cada transacci�n ve una imagen de los datos (una versi�n de la base de datos) como si fuera tiempo atr�s, sin tener en cuenta el estado actual de los datos que hay por debajo. Esto evita que la transacci�n vea datos inconsistentes que pueden ser causados por la actualizaci�n de otra transacci�n concurrente en la misma fila de datos, proporcionando aislamiento transaccional para cada sesi�n de la base de datos.
La principal diferencia entre multiversi�n y el modelo de bloqueo es que en los bloqueos MVCC derivados de una consulta (lectura) de datos no entran en conflicto con los bloqueos derivados de la escritura de datos y de este modo la lectura nunca bloquea la escritura y la escritura nunca bloquea la lectura.