TEMA 1 ADMON BASE DE DATOS
CONTROL DE CONCURRENCIA
TEMA 1
¿Qué es una transacción de base de datos?
Es una unidad lógica de trabajo que
debe ser totalmente completada o
abortada: no seaceptan estados
intermedios.
Es un conjunto de órdenes que se
ejecutan formando una unidad de
trabajo, es decir, en forma indivisible
o atómica.
EJEMPLOS
Por ejemplo, si se vende un producto aun
cliente, la transacción se compone de por lo
menos dos partes: habrá que actualizar el
inventario restando la cantidad de unidades
vendidas de la cantidad disponible en la tabla
PRODUCTO, yactualizar la tabla de cuentas por
cobrar para cobrarle al cliente más adelante.
Una transacción de varios componentes, como
la venta antes mencionada, no debe ser
parcialmente completada. No es aceptableque
se actualice el inventario o las cuentas por
cobrar, deben hacerse en ambas.
EJEMPLOS
Un ejemplo habitual de transacción es el traspaso
de una cantidad de dinero entre cuentas bancarias.Normalmente se realiza mediante dos operaciones
distintas, una en la que se decrementa el saldo de
la cuenta origen y otra en la que incrementamos el
saldo de la cuenta destino. Para garantizar laatomicidad del sistema (es decir, para que no
aparezca
o
desaparezca
dinero),
las
dos
operaciones deben ser atómicas, es decir, el
sistema debe garantizar que, bajo cualquier
circunstancia (incluso una caídadel sistema), el
resultado final es que, o bien se han realizado las
dos operaciones, o bien no se ha realizado ninguna.
Una
base de datos se dice que es
transaccional si es capaz de mantenerla
integridad de los datos, haciendo que
estas transacciones no puedan finalizar en
un estado intermedio. Cuando por alguna
causa el sistema debe cancelar la
transacción, empieza a deshacer las
órdenesejecutadas hasta dejar la base de
datos en su estado inicial (llamado punto
de integridad), como si la orden de la
transacción nunca se hubiese realizado.
PROPIEDADES
Una transacción debe contar...
Regístrate para leer el documento completo.