Protocolo De Confirmación En Dos Fases - Bases De Datos Distribciuidas

Páginas: 6 (1337 palabras) Publicado: 13 de noviembre de 2012
PROTOCOLO DE CONFIRMACIÓN EN DOS FASES

EN INTERCONEXIÓN DE COMPUTADORES Y BASE DE DATOS, EL PROTOCOLO COMMIT DE DOS FASES ES UN ALGORITMO DISTRIBUIDO QUE PERMITE A TODOS LOS NODOS DE UN SISTEMA DISTRIBUIDO PONERSE DE ACUERDO PARA HACER COMMIT A UNA TRANSACCIÓN. EL RESULTADO DEL PROTOCOLO EN QUE TODOS LOS NODOS REALIZAN COMMIT DE LA TRANSACCIÓN O ABORTAN, INCLUSO EN EL CASO DE FALLOS EN LA REDO FALLOS EN NODOS. SIN EMBARGO, DE ACUERDO CON EL TRABAJO DE DALE SKEEN Y MICHAEL STONEBRAKER, EL PROTOCOLO NO MANEJARÁ MÁS QUE EL FALLO DE UN SITIO ALEATORIO A LA VEZ. LAS DOS FASES DEL ALGORITMO SON LA FASE DE PETICIÓN DE COMMIT, EN EL CUAL EL COORDINADOR INTENTA PREPARAR A TODOS LOS DEMÁS, Y LA FASE COMMIT, EN LA CUAL EL COORDINADOR COMPLETA LAS TRANSACCIONES A TODOS LOS DEMÁS PARTICIPANTES.EL PROTOCOLO FUNCIONA DE LA MANERA SIGUIENTE: UN NODO ES LLAMADO EL COORDINATOR, EL CUAL ES EL SITE MAESTRO, Y EL RESTO DE LOS NODOS EN LA RED SON DESIGNADOS LOS PARTICIPANTES. EL PROTOCOLO ASUME QUE HAY ALMACENAMIENTO ESTABLE EN CADA NODO CON UN SISTEMA DE LOG WRITE-AHEAD, QUE LOS NODOS NO ESTÁN SIEMPRE CAÍDOS, QUE LOS DATOS EN EL LOG WRITE-AHEAD NUNCA SE HAN PERDIDO O CORROMPIDO EN UNACAÍDA(CRASH), Y QUE DOS NODOS CUALQUIERA PUEDEN COMUNICARSE UNOS CON LOS OTROS. LA ÚLTIMA SUPOSICIÓN NO ES MUY RESTRICTIVA, YA QUE LA COMUNICACIÓN DE REDES PUEDE SER RE-ENRUTADA NORMALMENTE. LAS PRIMERAS DOS SUPOSICIONES SON MUCHO MÁS FUERTES; SI UN NODO ESTÁ TOTALMENTE DESTRUIDO ENTONCES LOS DATOS PUEDEN PERDERSE.
EL PROTOCOLO ES INICIADO POR EL COORDINADOR DESPUÉS DE ALCANZAR EL ÚLTIMO PASO DE LATRANSACCIÓN. LOS PARTICIPANTES ENTONCES RESPONDEN CON UN MENSAJE DE ACUERDO O UN MENSAJE ABORTAR DEPENDIENDO DEL ÉXITO.
FASE DE PETICIÓN DEL COMMIT
1. EL COORDINADOR ENVÍA UN MENSAJE CONSULTA PARA COMMIT A TODOS LOS PARTICIPANTES.
2. LOS PARTICIPANTES EJECUTAN LA TRANSACCIÓN HASTA EL PUNTO DONDE ELLOS SERÁN PREGUNTADOS PARA REALIZAR COMMIT. ELLOS PUEDEN ESCRIBIR UNA ENTRADA A SU LOG UNDO(LOG DEDESHACER) Y UNA ENTRADA A SU LOG REDO(LOG DE REHACER).
3. CADA PARTICIPANTE RESPONDE CON UN MENSAJE ACUERDO SI LA TRANSACCIÓN TUVO ÉXITO, O UN MENSAJE ABORTAR SI FALLÓ LA TRANSACCIÓN.
4. EL COORDINADOR ESPERA HASTA QUE TENGA UN MENSAJE DE CADA PARTICIPANTE.

FASE COMMIT
ÉXITO
SI EL COORDINADOR DE ESTA PAGINA RECIBIÓ UN MENSAJE ACUERDO DE TODOS LOS PARTICIPANTES DURANTE LA FASE DEPETICIÓN DE COMMIT:
1. EL COORDINADOR ENVÍA UN MENSAJE COMMIT A TODOS LOS PARTICIPANTES.
2. CADA PARTICIPANTE COMPLETA LA OPERACIÓN, Y LIBERA TODOS LOS BLOQUEOS Y RECURSOS MANTENIDOS DURANTE LA TRANSACCIÓN.
3. CADA PARTICIPANTE ENVÍA UN RECONOCIMIENTO(ACK) AL COORDINADOR.
4. EL COORDINADOR COMPLETA LA TRANSACCIÓN CUANDO HA RECIBIDO TODOS LOS RECONOCIMIENTOS.
FRACASO
SI ALGÚNPARTICIPANTE ENVIÓ UN MENSAJE ABORTAR DURANTE LA FASE DE PETICIÓN DE COMMIT:
1. EL COORDINADOR ENVÍA UN MENSAJE ROLLBACK A TODOS LOS PARTICIPANTES.
2. CADA PARTICIPANTE DESHACE LA TRANSACCIÓN USANDO EL LOG UNDO(LOG DE DESHACER), Y LIBERA LOS RECURSOS Y BLOQUEOS MANTENIDOS DURANTE LA TRANSACCIÓN.
3. CADA PARTICIPANTE ENVÍA UN RECONOCIMIENTO(ACK) AL COORDINADOR.
4. EL COORDINADOR COMPLETA LATRANSACCIÓN CUANDO HAN SIDO RECIBIDOS LOS RECONOCIMIENTOS.
DESVENTAJAS

LA MAYOR DESVENTAJA DEL PROTOCOLO COMMIT EN DOS FASES ES EL HECHO DE QUE ES UN PROTOCOLO BLOQUEANTE. UN NODO ESTARÁ BLOQUEADO MIENTRAS ESTÉ ESPERANDO UN MENSAJE. ESTO SIGNIFICA QUE OTROS PROCESOS COMPITEN POR LOS BLOQUEOS DE RECURSOS MANTENIDOS POR LOS PROCESOS BLOQUEADOS TENDRÁN QUE ESPERAR A QUE LOS BLOQUEOS SEAN LIBERADOS.UN NODO INDIVIDUAL CONTINUARÁ INCLUSO SI OTROS SITES HAN FALLADO. SI EL COORDINADOR FALLA PERMANENTEMENTE, ALGUNOS PARTICIPANTES NUNCA RESOLVERÁN SUS TRANSACCIONES. ESTO TIENE EL EFECTO DE QUE LOS RECURSOS ESTÁN SIEMPRE COMPROMETIDOS. EL ALGORITMO PUEDE BLOQUEAR INDEFINIDAMENTE DE LA SIGUIENTE FORMA: SI UN PARTICIPANTE HA ENVIADO UN MENSAJE ACUERDO AL COORDINADOR, SE BLOQUEARÁ HASTA QUE UN...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Protocolo de confirmacion de 2 fases
  • Fases para el diseño de una base de datos
  • Conexión bases de datos oracle con java fase 1
  • BASE DE DATOS , base de datos
  • Fase Base
  • Que es una base de datos y tipos de base de datos
  • Bases de datos y usuarios de bases de datos
  • 1b Fases del Diseno de Bases de Datos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS