Sunteți pe pagina 1din 4

RESUMEN DE TCNICAS DE RECUPERACIN DE DATOS, por Stephany Daneri Abreviaturas: tmb = tambin; tx = transaccin; xk = porque; bd = base de datos Tcnicas

de recuperacin Para llevarlas a cabo es necesario poner y revisar la informacin que se encuentra en el log. Existen varios tipos de colocar la info en los logs (tambin llamados, bitcoras): Actualizacin diferida Actualizacin inmediata (ambas, se trataran que veremos ms adelante) Tcnicas de recuperacin: Las ms importantes: En el lugar, sombra, proceso de revertir (trata sobre anular tx, no recomendable hacer eliminacin cascada, xk es muy costoso) En resumen, Como se devuelve consistencia a la BD? Tcnicas: En el lugar: En oracle hay 4 archivos, 3 redolog (multiples copias, contiene lo mismo, con el objetivo de en caso de fallo tomo otro) y 1 undotb (archivo que hace referencia al archivo de DESHACER TX) Los controlfile (archivos de oracle) tmb tiene 3 rplicas. Esrta tcnica usa la bitacora. Se sobreescribe el elemento de informacin (anterior x actual). Aplica protocolo de escritura adelantada(escritura forzada), antes de asentar info en el disco Tenemos 2 bitacora, la de cache y la de disco. b) Sombra: Tmb llamada "no rehacer no deshacer", lo que hace es mantener copias del mismo elemento de info por lo k no necesita rehacer ni deshacer. Usa ms espacio en disco como desventaja; mantiene una IMAGEN ANTERIOR Y OTRA POSTERIOR. Recurre al disco para realizar la accin. c) Reversin de transaccin Si aun as la transaccin falla, es necesario revertir o eliminar dicha tx, es decir, valores alterados tiene k volver a sus datos originales. La reversion cascada es riesgosa y consume mucho tiempo. VER EJMPLO DIAPO OJO: Si una tx ha trabajado con un dato y lo ha modificado , las dems tx k han trabajado con dicho dato tmb tiene k revertirse Recuperacin de fallos en TX Implica restaurar la bd a un estado anterior. Se toma info de log para actualizar la bd o para deshacer operaciones o rehacerla. De acuerdo a la fecha, el log conserva la info sobre modificaciones hechas a los elementos de info. La bitcora siempre es d tamao menor k la de la bd. Estrategia de recuperacin:

1) si daos considerables x fallo catastrfico, usar backup rehaciendo operaciones de txs confirmadas asentadas en la bitacora hasta el momento fallo. 2) si bd no tiene dao fsico, pero tiene datos inconsistentes (posible error programacin) --> revertir cambios k provocaron inconsistencia no se usa el backup, solo se consulta entradas asentadas en el log del sistema. Oracle a partir de la versin 10, permite descubrir info importante del log (configuracin previa), usa minera log; para ello se tiene k manejar log archivados. Implica k todos los logs mantienen la misma info, se mantiene un histrico con archivamiento. Sobre los archivados se aplica esta minera de log. TECNICAS DE RECUPERACION DE FALLOS NO CATASTROFICOS 1) ACTUALIZACION DIFERIDA No rehacer ni rehacer. No actualiza en BD hasta k una transaccin llega al COMMIT. Log de ram se asienta en log de disco luego se asienta en la bd. Solo asienta transacciones confirmadas en disco. Cada cierto tiempo o cant. de transacciones, se procede a guardar lo de log ram a log disco; USA EL CHKPOINT. SE GUARDA EN LA BASE DE DATOS. Si hay fallo de tx, esta no habr modificado la bd. Se puede rehacer tx confirmadas ya asentadas en el log. *RAD_1: (para un ENTORNO MONOUSUARIO, k ya casi no existen) Se usan 2 listas de tx, 1 las confirmadas y 2 las activas (hace esta lista desde el ultimo chkpnt). SE hace rehacen todas las op k sean escritura de las tx conformadas en el orden k estan en l log; con las actvas se vuelven a ejecutar. ver ejmplo diapo.SIEMPRE DOS LISTAS: LAS CONFIRMADAS Y LAS ACTIVAS. *RAD_M:(para un ENTORNO multisuario, el comun) rehacer las escrituras de las tx confirmadas. las tx activas activas y no confirmadas se cancelan y deben ser reintroducidas. SIEMPRE DOS LISTAS: LAS CONFIRMADAS Y LAS ACTIVAS.OJO EN LA LISTA DE LAS CONFIRMADAS SE PONEN LAS TX CONFIRMADAS DESPUES DEL ULTIMO CHKPNT.

2) ACTUALIZACION INMEDIATA TMB LLAMADA DESHACER, REHACER Y TMB DESHACER Y NO REHACER. tx actualizan la bd, pero antes hacen escritura forzada en log de disco.OJO LAS OP SE ASENTAN 1ERO EN LOG DE DISCO LUEGO (CASI DE INMEDIATO) SE ASIENTA EN LA BD. NO ESPERA COMMIT. EN CASO DE FALLO, si tx falla antes de commit, es necesario revertir operaciones ya asentadas en la BD Recuperacin de TX de mltiples bd (protocolo de confirmacin de dos fases) Para atomicidad de tx de multibasesde datos, se necesitA mecanismo de 2 niveles. Se requiere un Gestor de recuperacin global adems de gestores de recuperacin locales.

*FASE1: SE LE AVISA AL COOR GLOBAL K TX HA SIDO CONFIRMAdo. EL COOR GENERAL ENVIA MSJ POR CONFIRMAR.CADA BD APLICA ESCIRTURA FORZADA.. SI falla escritura FORZADA, la bd le envia a coor global seal de incorrecto. *FASE2: bd dicen correcto y coor gen envia seal de confirmar.cambios asentados en bd participantes.si + bd evian incorrecto entpcnes el coor general envian revertir el efecto de la tx. se usa la bitacora. BLOQUEOS: RECUPERACION RELACIONADO CON TECNICAS DE CONTROL DE CONCURRENCIA. ver *Nota Ojo* tcnicas de control escrito abajo Se usa para garantizar una bd coherente. Otros usuarios no van a modificar el dato k se est trabajando ni se pueden leer. SE USA UNA MATRIZ DE COMPATIBILIDAD DE TIPOS DE BLOKEO TIPOS: COMPARTIDOS(s) Si existe, otros pueden visualizar dicho elemento mas no emplear acciones de escritura. Solo hay compatibilidad con otros de manera compartida, para un select x ejemplo. La cual es bloqueo de lectura. EXCLUSIVOS(X) Si existe, otros no pueden accesar a ese elemento. As otro quiera un bloqueo compartido no se puede. Solo para update, inserciones, para agregar o modificar llaves primarias. Cualquier cambio k se desee hacer en el esquema DE LA BD. Bloqueo de escritura BLOQUEO MORTAL (DEADLOCK) MAS DE UNA TX KIERE ACCEDER A UN RECURSO y no pueden. UNA TX KIERE BLOKEAR UN ELEM USADO POR OTRA TX Y VICEVERSA. SE DEBN RASTREAR AKELLAS K GENEREN ESTA SITUCACION Y RESOLVER. VER EJMPLO. se usa KILL para terminar un proceso; se deben ejecutar con cuidado. sp_who para obtener un informa de valores vlidos del SPID ---------------------------------------------------------------------------------------------------------*Nota Ojo* TCNICAS DE CONTROL DE CONCURRENCIA. Reaccin ante tx concurrente. Se garantiza con ellas la no interferencia. Emplean protocolos k garantizan seriabilidad. seriabilidad: vista de tx a manera secuenciasl ,es decir, laas tx son concurrentes pero las muestra de manera secuencial. Hay protocolos de tcnica de bloqueos, marca de tiempo, multiversion, optimista (validacin):_ TECNICA DE BLOQUEOS USAN CANDADOS A ELEMENTOS DE INFO, para k otros no puedan acceder a este. Describe estado respecto a operaciones k se pueden aplicar a dicho elemento (bloqueo de escritura o lectura)

MARCA DE TIEMPO Usa marca de tiempo, k es un ID UNICO... Multiversion VARIAS VERSIONES DE UN ELEMENTO de info Optimistas Validacin de tx despus de k tx ejecuta sus operaciones.

GRANULARIDAD Refiere a K TAMAO ES EL ELM DE INFO (valor, registro, bloque, o la bd). El tamao afecta el control de concurrencia. Si granulo es muy grande bloqueo muchos elementos. Se determina el granulo de info para hacer blokeos Se sugiere leer cap. 18 de Elmasri y Navathe, para profundizar el tema.

S-ar putea să vă placă și