Gestion de Memoria y de Transacciones
GESTION DE TRANSACCIONES
Una transacción es una secuencia de instrucciones de manipulación de la base de datos que constituye una unidad lógica de ejecución. Una transacción debe satisfacer las propiedades de atomicidad, consistencia, aislamiento y persistencia. El mantenimiento de cada una de estas propiedades es responsabilidad de un módulo del SGBD, la atomicidad y la persistencia son responsabilidad del módulo de recuperación, el aislamiento es responsabilidad del módulo de control de la concurrencia y la consistencia es responsabilidad del módulo de comprobación de la integridad y del módulo de recuperación.
Una transacción es un conjunto de operaciones que realizan una única función lógica en una aplicación de bases de datos
El componente de gestión de transacciones asegura que la base de datos se mantiene en un estado consistente (correcto) aun cuando se produzcan Fallos en el sistema (p.e. fallos de alimentación o del sistema operativo) o fallos de transacción.
El gestor de control de concurrencia controla la interacción entre transacciones concurrentes, para asegurar la consistencia de la base de datos.
EJEMPLOS:
Considere la base de datos que ha diseñado en la práctica anterior y cuyo esquema se encuentra en el anexo para la gestión de una biblioteca y realice los siguientes ejercicios.
a) En el sistema ORACLE10 no existe la directriz actualización en cascada para la restauración de la integridad referencial. ¿Cómo podría modificar el código de un socio que ha tenido préstamos, sin violar la integridad referencial de la relación de préstamos históricos? (necesidad del concepto de transacción).
b) Diseñe una transacción que realice inserciones de tuplas sobre la relación Socios según el siguiente esquema de transacción:
COMMIT;
INSERT INTO socio VALUES (‘s1’, ..., ..., ..., 0);
INSERT INTO socio VALUES (‘s2’, ..., ..., ..., 0);
INSERT INTO socio VALUES (‘s1’, ..., ..., ..., 0);
INSERT INTO socio VALUES (‘s3’, ..., ..., ..., 0);
COMMIT;
(Donde s1, s2 y s3 son códigos de socio que no haya usado hasta el momento de ejecutar la transacción y los puntos suspensivos representan valores cualesquiera para los atributos nombre, dirección y teléfono).
Esta transacción viola la restricción de clave primaria para la relación Socio.
Ejecute dos veces el anterior esquema de transacción, una vez con la restricción de clave primaria para la relación socio en modo inmediato; borre las tuplas insertadas y vuelva a realizarlo con la restricción en modo diferido. ¿Qué diferencias observa en ambos casos? (atomicidad y consistencia).
Gestión de almacenamiento
El gestor de almacenamiento es un módulo que proporciona el interfaz entre los datos de bajo nivel almacenados en la base de datos y los programas de aplicación y consultas enviadas al sistema.
El gestor de almacenamiento se encarga de:
Interactuar con el gestor de ficheros
Conseguir un almacenamiento, recuperación y actualización eficientes de los datos

0 Comments:
Post a Comment
<< Home