+ All Categories
Home > Documents > PARTE I ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video: ...

PARTE I ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video: ...

Date post: 28-Jan-2016
Category:
Upload: raquel-mingo
View: 223 times
Download: 1 times
Share this document with a friend
Popular Tags:
24
PARTE I ANDRI GIOVANNI HERNANDEZ CAMPOSECO
Transcript
Page 1: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

PARTE I

ANDRI GIOVANNI HERNANDEZ CAMPOSECO

Page 2: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

ANDRI GIOVANNI HERNANDEZ CAMPOSECO

Check point video:http://www.youtube.com/watch?v=FFzi4WLYl84

Dead Lock:http://www.youtube.com/watch?v=m28Da9zqrqk

Concurrencia : http://www.youtube.com/watch?v=kVTPnMSk_Zc

Puntos de Verificación, Tipos de Concurrencia y problemas, Bloqueo mortal.

Page 3: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Puntos De Verificacion Checkpoints:

Cuando ocurre una falla en el sistema es necesario consultar la bitácora para determinar cuáles son las transacciones que necesitan volver a hacerse y cuando no necesitan hacerse.Estos puntos de verificación nos ayudan para reducir el gasto de tiempo consultando la bitácora. El punto de verificación es un registro que se genera en la bitácora para concluir en todo lo que se encuentra antes de ese punto está correcto y verificado.

Si el sistema se llega a caer, se realiza la bitácora buscando del final al inicio el primer registro checkpoint, ya encontrado se procesan los registros que se encuentra después del checkpoint.El proceso de recuperación ya depende del tipo que estemos utilizando.

Page 4: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Puntos De Verificacion Checkpoints:

La operación de recuperación requiere recorrer todo el registro de la base de datos. Así, el buscar todas las transacciones a las cuales es necesario aplicarles un UNDO o REDO puede tomar una cantidad de trabajo considerable. Para reducir este trabajo se pueden poner puntos de verificación (checkpoints) en el registro de la base de datos para indicar que en esos puntos la base de datos está actualizada y consistente. En este caso, un REDO tiene que iniciar desde un punto de verificación y un UNDO tiene que regresar al punto de verificación más inmediato anterior. La colocación de puntos de verificación se realiza con las siguientes acciones:

Se escribe un “begin_checkpoint” en el registro de la base de datos. Se recolectan todos los datos verificados en la base de datos estable. Se escribe un “fin_de_checkpoint” en el registro de la base de datos.

Page 5: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Puntos De Verificacion Checkpoints:

• Los puntos de checkpoint en el diario garantizan que la información de las transacciones que han terminado antes de ese punto está en la base de datos.•Un checkpoint consistente en:–Suspender la ejecución de las transacciones temporalmente.–Forzar la escritura de todas las actualizaciones de buffer a disco.–Escribir [checkpoint] en el diario– Hacer que las transacciones continúen

Page 6: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:
Page 7: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Concurrencia

Page 8: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Concurrencia

Cuando se ejecutan concurrentemente varias transaccionesen la base de datos, puede dejar de conservase la consistenciade los datos. Es necesario que el sistema controle lainteracción entre las transacciones concurrentes, y dichocontrol se lleva a cabo mediante uno de los muchosmecanismos llamados esquemas de control de concurrencia.

Page 9: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Problemas clásicos deConcurrencia:

Actualización Perdida• Ocurre cuando se pierde la actualización hecha por una transacción T1 por la acción de otra transacción T2 sobre el mismo elemento de datos. Lectura Sucia• Ocurre cuando una transacción T2 lee un valor de un

elemento de dato dejado por otra transacción T1 que no hizo commit antes de que T2 leyera el dato.

Fenómeno Fantasma: • Una transacción sumariza los elementos de datos de un

conjunto de tuplas, sin embargo otra transacción esta insertando una nueva tupla con datos que deberían ser tomados en cuenta por la primera transacción.

Page 10: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Protocolos basados en bloqueo

Se pueden usar varios esquemas de control de concurrencia para asegurar la secuencialidad .Todos estos esquemas o bien retrasan una operación o bien abortan la transacción que ha realizado la operación. Los más comunes son los protocolos de bloqueo, los esquemas de ordenación por marcas temporales, las técnicas de validación y los esquemas multiversión.

Una forma de asegurar la secuencialidad es exigir que el acceso a los elementos de datos se haga en exclusión mutua; es decir, mientras una transacción accede a un elemento de datos, ninguna otra transacción puede modificar dicho elemento. El método más habitual que se usa para implementar este requisito es permitir que una transacción acceda a un elemento de datos sólo si posee actualmente un bloqueo sobre dichoelemento.

Page 11: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Bloqueo Mortal

InterbloqueosUn interbloqueo se produce cuando dos o más tareas se bloquean entre sí permanentemente teniendo cada tarea un bloqueo en un recurso que las otras tareas intentan bloquear. Por ejemplo: •La transacción A tiene un bloqueo compartido de la fila 1.•La transacción B tiene un bloqueo compartido de la fila 2.•La transacción A ahora solicita un bloqueo exclusivo de la fila 2 y se bloquea hasta que la transacción B finalice y libere el bloqueo compartido que tiene de la fila 2.•La transacción B ahora solicita un bloqueo exclusivo de la fila 1 y se bloquea hasta que la transacción A finalice y libere el bloqueo compartido que tiene de la fila 1.

La transacción A no puede completarse hasta que se complete la transacción B, pero la transacción B está bloqueada por la transacción A. Esta condición también se llama dependencia cíclica: la transacción A tiene una dependencia de la transacción B y la transacción B cierra el círculo teniendo una dependencia de la transacción A.Ambas transacciones con un interbloqueo esperarán para siempre, a no ser que un proceso externo rompa el interbloqueo.La supervisión de interbloqueos del SQL Server Database Engine (Motor de base de datos de SQL Server) de Microsoft comprueba periódicamente si hay tareas con un interbloqueo. Si el monitor detecta una dependencia cíclica, selecciona una de las tareas como el sujeto y finaliza su transacción con un error. Esto permite a la otra tarea completar su transacción. La aplicación con la transacción que terminó con un error puede reintentar la transacción, que suele completarse después de que la otra transacción interbloqueada haya finalizado.

A veces, los interbloqueos se denominan "abrazo mortal".

Page 12: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:
Page 13: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

GRACIAS POR SU ATENCION

Page 14: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

PARTE II

ANDRI GIOVANNI HERNANDEZ CAMPOSECO

Page 15: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Técnicas de recuperación de bases de datos

ANDRI GIOVANNI HERNANDEZ CAMPOSECO

Page 16: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Conceptos de recuperación. Descripción dela recuperación y clasificación de los

algoritmos de recuperación

Recuperarse al fallo de una transacción significa que la base de datos se restaura al estado coherente mas reciente, inmediatamente anterior al momento del fallo para esto el sistema guarda las información sobre los cambios de las transacciones esta información se guarda en el registro del sistema.

1. Si hay un fallo como la caída del disco, el sistema restaura una copia se seguridad del registro, hasta el momento del fallo.2. Cuando el daño se vuelve inconsistente, se pueden rehacer algunas operaciones para restaurar a un estado consistente. En este caso no se necesita una copia archivada.Actualización Diferida Actualización inmediata

No se actualiza físicamente la base de datos Hasta que no haya alcanzado su punto de confirmación

La base de datos puede ser actualizada por Algunas Operaciones antes de que esta ultima alcance su punto de confirmación.

NO-DESHACER/REHACER DESHACER/REHACER

Page 17: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Almacenamiento en cache en cache (búfer) de los bloques de disco.El proceso de recuperación se entrelaza con funciones del sistema operativo en particular con el almacenamiento en cache o en búfer en la memoria principal, Normalmente se reserva una colección de búferes en memoria, denominados cache DBMS. Se utiliza un directorio para rastrear los elementos de la base de datos que se encuentra en los búferes.

bit sucio que puede incluirse en la entrada del directorio, para indicar si se ha modificado o no el búfer.Pin-unpin dice que una pagina en cache se esta accediendo actualmente.Actualización en el lugar (in place) escribe en el bufer el mismo ubicación de disco original .Shadowing(en la sombra) escribe un bufer actualizado en una ubicación diferente.BFIM before image imagen antes de la actualización.AFIM after imagen después de la actualización.

Registro antes de la escritura, robar/no-robar y forzar no forzar

En este caso, el mecanismo de recuperación debe garantizar la grabación de la BFIM de los datos en la entrada apropiada del registro del sistema y que esa entrada se vuelque en el disco antes que la BFIM sea sobrescrita con la AFIM de la base de datos del disco.

Page 18: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

puntos de control en el registro del sistema y puntos de control difusos

Otro tipo de entrada en el registro es el denominado punto de control [checkpoint]

En este punto el sistema escribe en la base de datos en disco todos los búferesDel DBMS que se han modificado. No tienen que rehacer sus operaciones ESCRIBIR en caso de una caída del sistema .El gestor de recuperaciones de un DBMS debe decidir en que intervalos tomar un punto de control.La toma de un punto de control consiste en las siguiente acciones:1. Suspender temporalmente la ejecución de las transacciones. 2. Forzar la escritura de disco de todos los búferes de memoria que se hayan modificado .3. Escribir un registro [checkpoint] en el registro del sistema y forzar la escritura Del registro en el disco4. Reanudar la ejecución de las transacciones.

Page 19: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Anulación de transaccionesSi una transacción falla por cualquier razón es posible tener que anular la transacción Si una transacción t es anulada,, también debe anularse cualquier transacción S que Lea el valor de algún elemento de datos X escrito por T.

Anulación en cascada

Page 20: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

1 Técnicas de recuperación basadas en la actualización diferida.

Deferir o posponer las actualizaciones de la base de datos hasta que la transacción complete su ejecución satisfactoriamente y alcance su punto de confirmación

1.1 recuperación mediante la actualización diferida en un entorno monousuario

El algoritmo RDU se utiliza un procedimiento rehacer, Proporcionado con posterioridad,Para rehacer determinadas operaciones escribrir_elemento.

Page 21: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

1.2 Actualización diferida con ejecución concurrente en un entorno multiusuario

Planificación de la ejecución de las transacciones

Cuando se tomo el punto de control en el momento t1 la transacción T1Se habría confirmado.

Page 22: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Paginación en la sombra (shadowing).

Este esquema no requiere el uso de un registro del sistema en un entorno monousuario. Durante la ejecución de la transacción, el directorio sombra nunca se modifica.

Page 23: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

Algoritmo de recuperación ARIES.a) El registro del sistema en el momento de la caída b) Las tablas de transacciones y de paginas sucias en el momento de Punto de controlc) Las tablas de transacciones y de paginas sucias después de la fase de análisis

Page 24: PARTE I  ANDRI GIOVANNI HERNANDEZ CAMPOSECO. ANDRI GIOVANNI HERNANDEZ CAMPOSECO Check point video:  Dead Lock:

GRACIAS POR SU ATENCION


Recommended