La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Fundamentos de Bancos de datos

Presentaciones similares


Presentación del tema: "Fundamentos de Bancos de datos"— Transcripción de la presentación:

1 Fundamentos de Bancos de datos
Carmen R. Cintrón-Ferrer, 2008, Derechos Reservados

2 Optimización y Control de concurrencia
Módulo VIII Optimización y Control de concurrencia Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

3 Manejo de Transacciones
Acción por transacción: Examinar: Seleccionar Ordenar y Presentar Actualizar o Editar Eliminar Tipo de Transacción:: Simple Compuesta Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

4 Transacciones compuestas
Integridad y consistencia del DB: Ejecutar secuencia Verificar terminación exitosa serie Comprometer cambios (Commit) Ejemplos: Venta a crédito Recibo de inventario Cierre de cuenta de un cliente Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

5 Carmen R. Cintrón Ferrer, 2008, Derechos Reservados
Venta a crédito Crear factura de venta: INSERT INTO INVOICE INSERT INTO INVOICE DETAIL (Loop por cada item vendido) Actualizar inventario: UPDATE INVENTORY (Reducir inventario) Actualizar transacciones de ventas: UPDATE SALES Actualizar Balance Cliente UPDATE CUST_BALANCE Comprometer transacciones de la secuencia COMMIT Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

6 Carmen R. Cintrón Ferrer, 2008, Derechos Reservados
Recibo de inventario Registrar mercancía recibida: UPDATE INVENTORY (Loop por ítem) Actualizar transacciones de compras: Cotejar si se recibió toda la mercancía ordenada: UPDATE PO (marcar completo o dejar abierto) Actualizar Cuentas a Pagar: Seleccionar Proveedor Marcar Factura – PO para pago Generar transacción de pago INSERT AP Comprometer transacciones de la secuencia COMMIT Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

7 Cierre de cuenta de cliente
Identificar cliente: SEL AR Determinar transacciones en trámite: SEL INVOICE (Loop) Calcular Balance Adeudado: SEL CUST_BALANCE Cerrar cuenta: Si CUST_BALANCE = 0, UPDATE CUSTOMER Si CUST_BALANCE ne 0, UPDATE CUSTOMER Comprometer transacciones de la secuencia COMMIT Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

8 Propiedades de las transacciones
Atomicidad – Todas las operaciones de la transacción se completan con éxito Consistencia – El DB se mantiene consistente luego de cada transacción Aislación – los datos asociados a una transacción sólo pueden ser utilizados por la transacción hasta que concluye Durabilidad – Al completar la transacción (Commited) los cambios no se pierden Serialización – La secuencia de ejecución de transacciones concurrentes genera siempre el mismo resultado Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

9 Bitácora de transacciones
Begin / Set Transaction Operations: Update’s Insert’s Delete’s Commit Secuencia: IDtrans #trans Previo Siguiente Operador Relación Tuplo Atributo Valor inicial Valor final Fecha Hora Usuario Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

10 Control de concurrencia
Módulo VII Control de concurrencia Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

11 Control de concurrencia Problemas
Pérdida de actualizaciones – una transcción sobre escribe la(s) otra(s) Datos perdidos – Una transacción fue anulada (rollbacked) por error Búsquedas inconsistentes – Cuando se recuperan datos antes de haberse completado una transacción exitosa (Committed) Scheduler: Transacciones de READ Transacciones de READ/WRITE Transacciones de WRITE/READ Transacciones de WRITE/WRITE Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

12 Carmen R. Cintrón Ferrer, 2008, Derechos Reservados
Ejemplo Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

13 Control de concurrencia Cierre (Locks)
Lock – Garantiza el acceso exclusivo de los ítems de datos requeridos para completar una transacción Granularidad – Nivel de cierre: Data Base Tabla Página Tuplo /Fila Atributo Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

14 Control de concurrencia Cierre (Locks)
Tipo de Cierre (Lock): Binario: Cerrado Sin cerrar Exclusivo: Congela acceso hasta concluir ciclo Mutuamente excluyente – sólo a una transacción a la vez se le puede conceder un cierre exclusivo Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

15 Control de concurrencia Cierre (Locks) - Serialización
Tipo de Transacciones de cierre: READ LOCK WRITE LOCK UNLOCK Serialización de los Locks: Secuencia – Aumenta – Disminuye Protocolo: Dos transacciones no pueden tener Locks en conflicto Unlock no puede preceder un Lock Datos sólo se pueden modificar cuando se tienen todos los Locks requeridos Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

16 Control de concurrencia Deadlock
Definición Técnicas: Prevención Detección Evitarlo ¿Cuál emplear? Solución: Rollback Rollforward Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

17 Carmen R. Cintrón Ferrer, 2008, Derechos Reservados
Ejemplo Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

18 Control de concurrencia Cronometraje (Time Stamping)
Asignar un valor único a cada transacción Provee secuencia natural procesamiento Propiedades del cronometraje: Uniqueness – valor único Monotonicity – valor incremental Operacionalización: Asigna el mismo valor a la secuencia transaccional Ante conflictos: Una transacción se detiene Rollback Reasigna valor de cronometraje Mecánica: Wait/die o Wound/Wait Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

19 Carmen R. Cintrón Ferrer, 2008, Derechos Reservados
Módulo VII Ejecución del DB Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

20 Carmen R. Cintrón Ferrer, 2008, Derechos Reservados
Database Recovery Restauración del DB – Transacciones incompletas son abortadas Transacciones completas son exitosas Eventos: Fallos HW/SW Error humano Desastres Asegurar la integridad y consistencia DB Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

21 Carmen R. Cintrón Ferrer, 2008, Derechos Reservados
Transaction Recovery Bitácoras: Write-ahead Log – mantiene un “before image” Redundant transaction Log – diversas copias de las bitácoras de transacciones evitan pérdidas debido a problemas con los discos Buffers – propicia mayor agilidad en la ejecución al procesar transacciones en RAM CheckPoints – Facilita sincronizar las bitácoras con las actualizaciones físicas al DB Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

22 Transaction Recovery Técnicas
Write through: Actualiza inmediatamente el DB aunque la transacción esté uncommitted Recuperación: Identificar el último CheckPoint en el Log: Mantiene transacciones completadas (commited) Rehace transacciones pendientes actualizando cambios sobre la base de valor actualizado en el Log Secuencia de mayor (edad) a menor Deshace transacciones incompletas (rollbacked- uncommitted) utilizando el valor previo Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

23 Carmen R. Cintrón Ferrer, 2008, Derechos Reservados
Módulo VII Optimización del DB Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

24 Carmen R. Cintrón Ferrer, 2008, Derechos Reservados
Optimización Ajustar ejecución - performance tuning: SQL Queries: Parsing, Execution & Fetching DBMS Optimization Optimizer: Rule Based Cost Based Cache: Data/SQL/Sort RAID structuring Estadísticas: Ejecución queries Estructura tablas/archivos Indización Recursos Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

25 Databases Distribuidos
Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

26 Carmen R. Cintrón Ferrer, 2008, Derechos Reservados
Data Warehouse Carmen R. Cintrón Ferrer, 2008, Derechos Reservados

27 Carmen R. Cintrón Ferrer, 2008, Derechos Reservados
Referencias Database Processing: Fundamentals, Design and Implementation, Kroenke, Prentice Hall,NN (Latest edition) Database Systems: Design, Implementation and Management, Rob & Coronel, Thompson, Boston (Latest edition) Database in Depth, Relational Theory for Practitioners, C.J. Date, 2005, OReilly, Sebastopol, CA, Safari Books Online Bases de Datos: Desde Chen hasta Codd, Luque, Gómez-Nieto, López y Cerruela, 2002, Alfaomega – RA-MA, Madrid, España An Introduction to Database Systems, C.J. Date, 2000, Addison Wesley, Mass. Carmen R. Cintrón Ferrer, 2008, Derechos Reservados


Descargar ppt "Fundamentos de Bancos de datos"

Presentaciones similares


Anuncios Google