transacciones

17
Base de Datos I Msc. Guillermo Cabrera HCI 2014

Upload: bryan-alba

Post on 08-Dec-2015

2 views

Category:

Documents


0 download

DESCRIPTION

Bases de Datos

TRANSCRIPT

Base de Datos I

Msc. Guillermo Cabrera HCI 2014

Transacciones• Se llama transacción a una colección de

operaciones que forman una única unidad lógica de trabajo.•Un sistema de base de datos debe asegurar

que la ejecución de las transacciones se realice adecuadamente a pesar de la existencia de fallos.•O se ejecuta la transacción completa o no se

ejecuta en absoluto.

Propiedades de las Transacciones (ACID)

•Atomicidad: “!O todo o nada¡”.

• Consistencia: La ejecución aislada de una transacción, conserva la consistencia de BD.

•Aislamiento: Aunque se ejecuten varias transacciones concurrentes se garantiza que no se ejecuten concurrentemente transacciones.

•Durabilidad: Luego de finalizada una transaccion. Los cambios permanecen , incluso si hay fallas del sistema.

Estados de una Transacción

•Activa: La transacción permanece en ese estado durante su ejecución.• Parcialmente comprometida: Después de

ejecutarse la última transacción.• Fallida: Tras descubrir que no se puede

continuar la ejecución normal.•Abortada: Después de haber retrocedida la

transacción y restablecido la BD a su estado anterior.• Comprometida: Tras completarse con éxito

Transición de Estados de una Transacción

Atomicidad y Durabilidad

• Copia en la Sombra: Hacer copias de la BD (ineficiente).

Concurrencia

Planificaciones Secuenciales

Planificaciones

Problemas de concurrencia

• Actualización Perdida

•Dependencia no confirmada

• Análisis Inconsistente

• Lectura no repetible o difusa

• Lectura Fantasma

Actualización Perdida

Dependencia no Confirmada

Análisis Inconsistente

Lectura no repetible o difusa

Lectura Fantasma

Secuencialidad de las Operaciones

• Esto ayuda a suprimir concurrencia

• Restaurar de fallos a una BD

Aislamiento de Transacciones

• El aislamiento asegura que en la ejecución concurrente de transacciones, están aisladas entre sí, de tal manera que cada una tiene la impresión de que ninguna otra transacción se ejecuta concurrentemente con ella.