Transacciones

Solo disponible en BuenasTareas
  • Páginas : 12 (2767 palabras )
  • Descarga(s) : 0
  • Publicado : 21 de noviembre de 2011
Leer documento completo
Vista previa del texto
Gestión de transacciones
Marta Zorrilla Universidad de Cantabria

Tabla de contenido
• Transacciones
– Propiedades – Elementos del gestor responsables del control – Estados de las transacciones – Planificador de transacciones
• Grafo de precedencia • Secuencialidad en cuanto a conflictos • Recuperabilidad

• Control de concurrencia
– Problemas de concurrencia – Protocolos basados enbloqueo – Protocolos basados en marcas temporales – Protocolos basados en validación – Granularidad múltiples – Esquemas multiversión – Niveles de consistencia en SQL

• Sistemas de recuperación
– Clasificación de los fallos – Recuperación y atomicidad
• Acceso a los datos • Ficheros de Log • Copias de seguridad

Concepto de transacción
• Una transacción es una unidad de ejecución de unprograma que accede y posiblemente modifica los datos almacenados. (begin transaction, commit, rollback) • Transferir 50 € desde una cuenta A a una cuenta B

leer(A) A := A – 50 escribir(A) leer(B) B := B + 50 escribir(B)

Requisito de aislamiento – si entre Requisito de durabilidad – desde Requisito 6 atomicidad – se los pasos 3 y dese usuario que si la que se notifica al permite acceder a otratransacción transaccióndel ha transacción falla la base de(es completado la a después paso 3 ha tenido lugar Requisito de consistencia6, la datos parcialmentedel pasola – el decir, que y antes actualizada, sistema A de no se suma base y B datos altera por verá una de debería asegurar que sus transferencia de 50 €), las actualizaciones la se reflejan la ejecución de nobase de inconsistente ( la sumade A + B en actualizacionesde la transacción. la producidas por la será menor de datos, de lo contrario datos base de lo que debería). Se resultará una inconsistencia. puede asegurar de forma trivial a transacción deben permanecer, ejecutando las transacciones pesar de los fallos. secuencialmente, es decir, una detrás de otra.

Propiedades de las transacciones
• Atomicidad. O todas lasoperaciones de la transacción se reflejan correctamente en la base de datos, o ninguna. • Consistencia. La ejecución aislada de una transacción preserva la consistencia (coherencia) de los datos. • Aislamiento. Aunque varias transacciones se pueden ejecutar concurrentemente, cada transacción debe ignorar a las otras transacciones que se ejecutan concurrentemente con ella.
– Es decir, por cada par detransacciones Ti y Tj, el sistema garantiza que, o bien Tj ha terminado su ejecución antes de que comience Ti , o que Tj ha comenzado su ejecución después de que Ti terminara.

• Durabilidad. Tras la finalización con éxito de una transacción permanecen los cambios realizados en la base de datos, incluso si hay fallos en el sistema.

Elementos del gestor
• El Gestor de Transacciones asegura laAtomicidad de las transacciones. • El Gestor de Concurrencia controla la interacción entre las transacciones concurrentes (aislamiento) para garantizar la consistencia de la información. • El Gestor de Recuperación que permite retornar a una situación estable (durabilidad) a pesar de fallos en el sistema ( p. ej. Corte de luz, caída del S.O. ) o en las transacciones establecidas en los programas(p.e. reglas de negocio). • La consistencia la garantiza el programador

Estados de una transacción
• Activa, el estado inicial; la transacción permanece en este estado mientras se está ejecutando. • Parcialmente comprometida, después de ejecutarse la última instrucción. • Fallida, después de descubrir que la ejecución normal ya no puede llevarse a cabo. • Abortada, después del retroceso de latransacción y haber restaurado la base de datos su estado anterior al inicio de la transacción. Dos opciones después de que haya abortado:
– reiniciar la transacción – cancelar la transacción

• Comprometida, después de terminar con éxito.

Planificador de transacciones
• Responsable de determinar el orden de ejecución de las transacciones sin intercalar sus acciones. • Serialización vs...
tracking img