Está en la página 1de 4

COMPROMISO A DOS FASES

ADMINISTRACIÓN DE BASES DE DATOS

RICARDO JULIO SUÁREZ MARTÍNEZ

DOCENTE
JORGE LUIS ACEVEDO

CORPORACIÓN UNIFICADA NACIONAL DE EDUCACIÓN SUPERIOR

CUN

MAYO DE 2019

BOGOTA D.C
Compromiso de dos fases
El protocolo commit de dos fases es un protocolo distribuido que permite a todos los
nodos de un sistema distribuido ponerse de acuerdo para hacer commit a una
transacción. Dicho de otra manera, para que funcione, todos los nodos realizan el
proceso de compromiso para la transacción o abortan, el protocolo no maneja 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.
Funcionamiento
Su funcionamiento es el siguiente: Un nodo es llamado el coordinador, 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 una caída(crash), y que dos
nodos cualquiera puede 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
la transacción. Los Participantes entonces responden con un mensaje de acuerdo
o un mensaje abortar dependiendo del éxito.
Fase de petición del Compromiso
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 de deshacer) 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.
Desventajas
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 y 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 commit o rollback sea recibido. Si el coordinador está
permanentemente caído, el participante bloqueará indefinidamente, a menos que
pueda obtener la decisión global commit/abort desde uno de los participantes.
Cuando el coordinador ha enviado "consulta para commit" a los participantes, esto
bloqueará hasta que todos los participantes hayan enviado su decisión local. Más
aún, si un participante está permanentemente caído, el coordinador no bloqueará
indefinidamente: Dado que el coordinador es el único en decidir si la decisión es
'commit' o 'abort' el bloqueado permanente puede evitarse introduciendo un timeout:
Si el coordinador no ha recibido todos los mensajes esperados cuando ha pasado
el timeout decidirá 'abortar'. Este comportamiento conservador del protocolo es otra
desventaja: Se predispone al caso de aborto en lugar del caso completo.
BIBLIOGRAFÍA
 https://www.paraisodigital.org/internet/ll-commit-de-dos-fases-que-es-
definicion-y-significado-descargar-videos-y-fotos.html
 http://dev.worldpossible.org:81/wikipedia_es_all_2016-
02/A/Commit_de_dos_fases.html
 http://basesdedatosatope.blogspot.com/2013/04/bases-de-datos-
distribuidas.html

También podría gustarte