El control de concurrencia de Multiversion del ( abreviado MCC o MVCC ), en el campo de la base de datos de informática, es un método del control de concurrencia de uso general por los sistemas de gestión de la base de datos para proporcionar el acceso concurrente a la base de datos.

MVCC provee de cada usuario conectado con la base de datos un " snapshot" de la base de datos para que esa persona trabaje con. Ninguna cambios realizada no serán considerados por otros usuarios de la base de datos hasta que la transacción haya estado confiada.

Puesta en práctica

Relojes fechadores de las aplicaciones MVCC o IDs cada vez mayores de la transacción para alcanzar el Serializability . El MCC se asegura que una transacción nunca tenga que esperar un objeto de base de datos manteniendo varias versiones de un objeto. Cada versión tendría un reloj fechador de la escritura y dejaría una transacción Ti leer la versión más reciente de un objeto que precede los TS del reloj fechador (Ti).

Si Ti quiere escribir a un objeto, y si había otra transacción Tk, la orden del reloj fechador debe ser los TS (Ti) < los TS (Tk) para el objeto escribe la operación para tener éxito.

Cada objeto también tendría un reloj fechador leído, y si Ti quiso escribir para oponerse P, y TS (Ti) < RTS (se aborta y se recomienza P), Ti. Si no, Ti crea una nueva versión de P y fija los relojes fechadores de lectura/grabación de P a los TS (Ti).

La desventaja obvia a este sistema es el coste de versiones múltiples que almacenan de objetos en la base de datos. Por una parte lee nunca se bloquean, que puede ser importante para las cargas de trabajo que implican sobre todo valores de la lectura de la base de datos. El MCC es particularmente perito en la ejecución del aislamiento verdadero, algo de la foto que otros métodos de control de concurrencia hacen con frecuencia incompleto o con costes del alto rendimiento.

Historia

El control de concurrencia de Multiversion se describe en un cierto detalle en las secciones 4.5 del " de papel 1981 ; Control de concurrencia en la base de datos distribuida Systems" por Philip Bernstein y Nathan Goodman -- entonces empleado por la Computer Corporation de América. El papel de Bernstein y de Goodman cita una disertación 1978 por la caña de D. que describe absolutamente claramente MVCC y lo demanda como trabajo original.

El Jim Starkey trabajaba en DEC en su producto de la base de datos de red de Datatrieve cuando él subió con una idea para que un sistema maneje cambios concurrentes de muchos usuarios. La idea simplificó dramáticamente los problemas existentes del que trababan que demostraban ser un problema grave para los nuevos sistemas de la base de datis relacional que eran convertidos en ese entonces. Él comenzó a trabajar en el sistema en la DEC, pero cuando la DEC acababa de comenzar un esfuerzo de la base de datis relacional que llevó al producto Rdb/VMS . Cuando DEC descubierta sobre la suya proyecto que una guerra de territorios explotó (aunque el producto fue lanzado como Rdb/ELN) y Starkey decidido eventual para parar.

Él había oído que la computadora local de Apolo del vendedor del sitio de trabajo buscaba una base de datos que ofrecía en sus máquinas de Unix y pudo acordar financiar el desarrollo. Con su estímulo él formó los sistemas de base de datos de Groton del (nombrado después de la ciudad, Groton, Massachusetts, en donde fueron localizados) en el 1984 (Día del Trabajo del 3 de septiembre en los Estados Unidos) y el trabajo comenzado sobre qué sería lanzada eventual como InterBase en 1986.

Aunque la puesta en práctica InterBase fuera más similar al sistema descrito por Reed en su disertación del MIT que cualquier otra base de datos del día, y Starkey conocía Bernstein de su posición anterior en la Computer Corporation de América y más adelante en la DEC, Starkey ha indicado que él llegó la idea del control de concurrencia del multiversion independiente. En el mismo comentario, Starkey dice:

la inspiración del

The para el control de concurrencia multi-generacional era un sistema de base de datos hecho por la prima que apoyó fotos llanas de la página. La intención de la característica era dar a un lector un opinión constante de de la base de datos sin el bloqueo de escritores. La idea me intrigó como característica muy útil de una base de datos system.

Bases de datos con MVCC

Berkeley DB
CouchDB
Firebird (servidor de base de datos)
FLAIM
Motor de base de datos H2 (experimental desde la versión 1.57 (2007-08-25))
InterBase (todas las versiones) del


Servidor de Microsoft SQL (solamente en el servidor 2005 del SQL)
MySQL cuando está utilizado con el InnoDB o los motores del almacenaje del halcón .
Base de datos de Oracle todas las versiones desde Oracle 7
PostgreSQL y derivados de PostgreSQL tales como Netezza y Greenplum
ThinkSQL
Base de datos de objeto de Zope

Ver también

el Reloj-basó el control de concurrencia

.

  • Zenithic
  • Correlates of War
    Random links:Enano de Daihatsu | Muelle de Delamere | USS Hartford (1858) | Coles Phillips | Francien

  • © 2007-2008 enciclopediaespana.com; article text available under the terms of GFDL, from en.wikipedia.org
    ="http://pagead2.googlesyndication.com/pagead/show_ads.js">