Está en la página 1de 9

EQUIPO 2 / BASE DE DATOS DISTRIBUIDAS / UNIDAD 4

17.NOVIEMBRE.2013

INSTITUTO TECNOLOGICO DE VILLAHERMOSA


BASES DE DATOS DISTRIBUIDAS DOCENTE: JOSE MANUEL AGUILAR CRUZ INGENIERIA EN TECNOLOGIAS DE LA INFORMACION Y LAS COMUNICACIONES EQUIPO 2 ABIMELEC HERNANDEZ CRUZ REYES ABELINO MAY DE LA CRUZ IVAN OMAR MORENO GARCIA LUIS IVAN TIQUE TORRES INVESTIGACION DE LA UNIDAD 4

FECHA DE ENTREGA: 17 DE NOVIEMBRE DE 2013

EQUIPO 2 / BASE DE DATOS DISTRIBUIDAS / UNIDAD 4

17.NOVIEMBRE.2013

INTRODUCCION
La evolucin de los sistemas de informacin y el crecimiento no planeado de la informacin dentro de las organizaciones, ha trado dispersin de los datos en sitios local o geogrficamente dispersos. La necesidad de integrar y compartir dicha informacin, implica el nacimiento de una nueva tecnologa capaz de conformar de manera consistente la informacin de las organizaciones. Una de las tecnologas que trabaja en el problema de la integracin de informacin, es la Base de Datos Distribuidas (BDD).

EQUIPO 2 / BASE DE DATOS DISTRIBUIDAS / UNIDAD 4

17.NOVIEMBRE.2013

UNIDAD 4. MANEJO DETRANSACCIONES


4.2.2.2 BASADOS EN ESTAMPAS DE BLOQUEO Un bloqueo en general es cuando una accin que debe ser realizada est esperando a un evento. En el caso especfico de las bases de datos distribuidas usar bloqueo de recursos, peticiones para probar, establecer o liberar bloqueos requiere mensajes entre los manejadores de transacciones y el calendarizador. Para esto existen dos formas bsicas: Autnoma: cada nodo es responsable por sus propios bloqueos de recursos. Copia Primaria: un nodo primario es responsable para todos los bloqueos de recursos

Podemos definir que dos operaciones entran en conflicto que debe ser resuelto si ambas acceden a la misma data, y una de ellas es de escritura y si fueron realizadas por transacciones distintas.

4.2.2.3 PRUEBAS DE VALIDACION OPTIMISTAS Una transaccin es una coleccin de acciones que hacen transformaciones consistentes de los estados de un sistema preservando la consistencia del sistema.

EQUIPO 2 / BASE DE DATOS DISTRIBUIDAS / UNIDAD 4

17.NOVIEMBRE.2013

Pesimistas vs Optimistas Pesimistas: Cuando dos transacciones acceden al mismo dato se retrasa a una de ellas hasta que la otra finaliza. Ejemplo: cerrojos (locks). Puede haber interbloqueos (deadlocks). Optimistas: Se deja acceder libremente a cualquier dato, cuando la transaccin termina se efecta un test para averiguar si hubo conflicto. En caso positivo se aborta, en caso afirmativo compromete Ejemplo: marcas de tiempo (timestamps). Pueden provocar un nmero elevado de abortos.

Asumir que los conflictos entre transacciones son muy frecuentes y no permiten el acceso a un dato si existe una transaccin conflictiva que accesa el mismo dato. La ejecucin de cualquier operacin de una transaccin sigue la secuencia de fases: validacin (V), lectura (R), cmputo (C) y escritura (W) (Ver la siguiente figura transaccin pesimista). Los algoritmos optimistas, por otra parte, retrasan la fase de validacin justo antes de la fase de escritura (Ver figura transaccin optimista). De esta manera, una operacin sometida a un despachador optimista nunca es retrasada. Las operaciones de lectura, cmputo y escritura de cada transaccin se procesan libremente sin actualizar la base de datos corriente. Cada transaccin inicialmente hace sus cambios en copias locales de los datos. La fase de validacin consiste en verificar si esas actualizaciones conservan la consistencia de la base de datos. Si la respuesta es positiva, los cambios se hacen globales (escritos en la base de datos corriente). De otra manera, la transaccin es abortada y tiene que reiniciar.

EQUIPO 2 / BASE DE DATOS DISTRIBUIDAS / UNIDAD 4

17.NOVIEMBRE.2013

Es mejor un tratamiento optimista o el tratamiento pesimista? En general, es preferible el optimista porque el pesimista tiende a arruinar el rendimiento de la Base de Datos, a crear situaciones de deadlock (bloqueos mortales) con ms frecuencia, a generar filas de espera por la disponibilidad de los datos y a aumentar la competicin entre los usuarios. Cuanto mayor sea la cantidad de usuarios mayores sern los trastornos que el tratamiento pesimista causar porque a mayor cantidad de bloqueos, mayor cantidad de problemas. 4.2.3 DISCIPLIINAS DE INTERBLOQUEO El interbloqueo se puede definir como el bloqueo permanente de un conjunto de procesos que compiten por los recursos del sistema o bien se comunican unos con otros. A diferencia de otros problemas de la gestin concurrente de procesos, no existe una solucin eficiente para el caso general. Todos los interbloqueos suponen necesidades contradictorias de recursos por parte de dos o ms procesos.

La transaccin A tiene un bloqueo compartido de la fila 1. La transaccin B tiene un bloqueo compartido de la fila 2. La transaccin A ahora solicita un bloqueo exclusivo de la fila 2 y se bloquea hasta que la transaccin B finalice y libere el bloqueo compartido que tiene de la fila 2. La transaccin B ahora solicita un bloqueo exclusivo de la fila 1 y se bloquea hasta que la transaccin A finalice y libere el bloqueo compartido que tiene de la fila 1. Prevencin del interbloqueo. Objetivo: conseguir que sea imposible la aparicin de situaciones de interbloqueo. Impedir que se produzca una de las cuatro condiciones necesarias para producirlo: Exclusin mutua Retencin y espera

EQUIPO 2 / BASE DE DATOS DISTRIBUIDAS / UNIDAD 4

17.NOVIEMBRE.2013

No expropiacin Espera circular. Condicionar un sistema para quitar cualquier posibilidad de ocurrencia de interbloqueo.

Deteccin del interbloqueo Con deteccin del interbloqueo, se decide dinmicamente si la peticin actual de asignacin de un recurso podra, de concederse, llevar potencialmente a un interbloqueo. La prediccin del interbloqueo necesita, por lo tanto, conocer las peticiones futuras de recursos. Enfoques para la prediccin del interbloqueo: No iniciar un proceso si sus demandas pueden llevar a interbloqueo. No conceder una solicitud de incrementar los recursos de un proceso si esta asignacin puede llevar a interbloqueo. Las consultas se pueden expresar de varias maneras, expresiones equivalentes. Eliminacin del interbloqueo. Para eliminar interbloqueos abortando un proceso, tenemos dos mtodos; en ambos, el sistema recupera todos los recursos asignados a los procesos terminados. Abortar todos los procesos interbloqueados. Esta es una de las soluciones ms comunes, adoptada por Sistemas Operativos. Este mtodo romper definitivamente el ciclo de interbloqueo pero con un costo muy elevado, ya que estos procesos efectuaron clculos durante mucho tiempo y habr que descartar los resultados de estos clculos parciales. Abortar un proceso en cada ocasin hasta eliminar el ciclo de interbloqueo. Despus de cada aborto, debe solicitarse de nuevo el algoritmo de deteccin, para ver si todava existe el interbloqueo. Este mtodo cae en mucho tiempo de procesamiento adicional. Recuperacin del interbloqueo Limpiar un sistema de interbloqueos, una vez que fueron detectados. Una posibilidad es informar al operador que ha ocurrido un interbloqueo y dejar que el operador se ocupe de l manualmente. La otra posibilidad es dejar que el sistema se recupere automticamente del interbloqueo. Dentro de esta recuperacin automtica tenemos dos opciones para romper el interbloqueo: Una consiste en abortar uno o ms procesos hasta romper la espera circular, y la segunda es apropiar algunos recursos de uno o ms de los procesos bloqueados.

EQUIPO 2 / BASE DE DATOS DISTRIBUIDAS / UNIDAD 4

17.NOVIEMBRE.2013

4.3 CONFIABILIDAD La confiabilidad es otro requerimiento indiscutible y probablemente el ms importante. Una base de datos no confiable es simplemente inutilizable. Para la mayora de las aplicaciones empotradas, en especial las empleadas en sistemas de tiempo real, la confiabilidad es una propiedad no negociable que deben tener todos los componentes. Un sistema de manejo de bases de datos confiable es aquel que puede continua procesando las solicitudes de usuario an cuando el sistema sobre el que opera no es confiable. En otras palabras, aun cuando los componentes de un sistema distribuido fallen, un DDMBS confiable debe seguir ejecutando las solicitudes de usuario sin violar la consistencia de la base de datos.

EQUIPO 2 / BASE DE DATOS DISTRIBUIDAS / UNIDAD 4

17.NOVIEMBRE.2013

CONCLUSION
Las transacciones resultan algo indispensable para el manejo de informacin en bases de datos para lo cual resulta indispensable el manejo de errores ya que de ello depende de un uso adecuado de del mismo. Existen diferentes mtodos de implementar los mecanismos de control de acceso. Los ms comunes las agrupaciones, las listas de acceso, las listas de capacitacin y los mecanismos de bloqueo. Existe tambin la posibilidad de crear combinaciones de estas implementaciones en la mayora de sistemas operativos actuales.

EQUIPO 2 / BASE DE DATOS DISTRIBUIDAS / UNIDAD 4

17.NOVIEMBRE.2013

BIBLIOGRAFIA
Recuperado de Panoramas de un Sistema de Base de Datos (Un enfoque prctico) Cisneros G. Jos Luis. 1raa Edicin. Mxico 1998. 31 de Octubre2013 Recuperado de Bases de datos distribuidas. Rojas Kramer Carlos. Trabajo universitarios de la Universidad Cristbla Coln. 1 de Noviembre de 2013 Recuperado de link de http://www.cs.cinvestav.mx/SC/prof_personal/adiaz/Disdb/Cap_1.html Noviembre de 2013. internet 1 de