Control De Concurrencia Bases De Datos

Páginas: 58 (14284 palabras) Publicado: 23 de octubre de 2011
CAPÍTULO

16
E

CONTROL DE CONCURRENCIA

N el Capítulo 15 se vio que una de las propiedades fundamentales de las transacciones es el aislamiento. Cuando se ejecutan varias transacciones concurrentemente en la base de datos, puede que deje de conservarse la propiedad de aislamiento. Es necesario que el sistema controle la interacción entre las transacciones concurrentes; dicho control selleva a cabo a través de uno de los muchos mecanismos existentes llamado esquemas de control de concurrencia. Todos los esquemas de control de concurrencia que se describen en este capítulo se basan en la propiedad de secuencialidad. Es decir, todos los esquemas que se presentan aquí aseguran que las planificaciones son secuenciables. En el Capítulo 24 se describen esquemas de control de concurrenciaque admiten planificaciones no secuenciables. En este capítulo se trata la gestión de la ejecución concurrente de transacciones y se ignoran los fallos. En el Capítulo 17 se verá la manera en que el sistema se puede recuperar de los fallos.

16.1. PROTOCOLOS BASADOS EN EL BLOQUEO
Una forma de asegurar la secuencialidad es exigir que el acceso a los elementos de datos se haga en exclusión mutua;es decir, mientras una transacción accede a un elemento de datos, ninguna otra transacción puede modificar dicho elemento. El método más habitual que se usa para implementar este requisito es permitir que una transacción acceda a un elemento de datos sólo si posee actualmente un bloqueo sobre dicho elemento.
16.1.1. Bloqueos

Existen muchos modos mediante los cuales se puede bloquear unelemento de datos. En este apartado se centra la atención en dos de dichos modos: 1. Compartido. Si una transacción Ti obtiene un bloqueo en modo compartido (denotado por C) sobre el elemento Q, entonces Ti puede leer Q pero no lo puede escribir. 2. Exclusivo. Si una transacción Ti obtiene un bloqueo en modo exclusivo (denotado por X) sobre el elemento Q, entonces Ti puede tanto leer como escribir Q. Esnecesario que toda transacción solicite un bloqueo del modo apropiado sobre el elemento de datos Q dependiendo de los tipos de operaciones que se vayan a realizar sobre Q. La petición se hace al gestor de control de concurrencia. La transacción puede realizar la operación sólo después de que el gestor de control de concurrencia conceda el bloqueo a la transacción.
383

Dado un conjunto de modosde bloqueo, se puede definir sobre ellos una función de compatibilidad como sigue. Utilizamos A y B para representar dos modos de bloqueo arbitrarios. Supóngase que la transacción Ti solicita un bloqueo en modo A sobre el elemento Q, en el que la transacción Tj (Ti � Tj) posee actualmente un bloqueo de modo B. Si a la transacción Ti se le puede conceder un bloqueo sobre Q a pesar de la presenciadel bloqueo de modo B, entonces se dice que el modo A es compatible con el modo B. Tal función se puede representar convenientemente en forma de matriz. La relación de compatibilidad entre los dos modos de bloqueo que se usan en este apartado se presenta en la matriz comp de la Figura 16.1. Un elemento comp(A, B) de la matriz tiene el valor cierto si y sólo si el modo A es compatible con el modo B.Nótese que el modo compartido es compatible con otro modo compartido, pero no con el modo exclusivo. En todo momento se pueden tener varios bloqueos en modo compartido (por varias transacciones) sobre un elemento de datos en concreto. Una petición posterior de bloqueo en modo exclusivo debe esperar hasta que se liberen los bloqueos en modo compartido que se poseen actualmente.

C C X ciertofalso

X falso falso

FIGURA 16.1. Matriz de compatibilidad de bloqueo comp.

F UNDAMENTOS DE BASES DE DATOS

Una transacción solicita un bloqueo compartido sobre el elemento de datos Q a través de la instrucción bloquear-C(Q). De forma similar se solicita un bloqueo exclusivo a través de la instrucción bloquear-X(Q). Se puede desbloquear un elemento de datos Q por medio de la instrucción...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Control de concurrencia en base de datos
  • Concurrencia En Una Base De Datos
  • Concurrencia En Base De Datos
  • Trigger, Vistas, Concurrencia Base De Datos
  • controles de base de datos
  • Histogramas, Escenarios, Control De Datos Y Base De Datos En Excel
  • concurrencia en base de datos
  • Base de datos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS