Protocolo de Bloqueo en dos
fases
Universidad Mariano Gálvez
Facultad de ingeniería en sistemas
Curso: Base de datos 2
Integrantes:
Geovani Mendoza 9959-18-15407
Angel Chacón 9959-18-5201
Sebastián Moreira 9959-18-7960
Que es el Bloqueo de Dos Fases?
• El protocolo de bloqueo de dos fases se utiliza para garantizar que las transacciones se serialicen.
En el protocolo de bloqueo de dos fases, cada transacción debe emitir todas las solicitudes de
bloqueo antes de que pueda emitir cualquier solicitud de desbloqueo.
• En él, todas las operaciones de bloqueo preceden a la primera operación de desbloqueo de la
transacción. El proceso se puede así dividir en dos fases, la fase de bloqueo y de desbloqueo.
Fases del Bloqueo
• Existen dos fases en el Bloqueo, la primera es una fase creciente durante la cual los bloqueos son adquiridos,
y una fase decreciente durante la cual los bloqueos son liberados.
• Las dos fases del protocolo son:
• Fase de expansión (crecimiento): esta fase permite a la transacción emitir cualquier nueva solicitud de
bloqueo que se requiera. Las solicitudes de desbloqueo no están permitidas en esta fase.
• Fase de reducción: esta fase permite que la transacción libere bloqueos adquiridos en la fase de expansión.
Las nuevas solicitudes de bloqueo no están permitidas en esta fase.
Teorema de bloque de 2 Fases
Teorema: Si todas las transacciones obedecen las siguientes reglas:
• a) Antes de operar sobre cualquier objeto la transacción debe adquirir primero un bloqueo sobre ese objeto.
• b) Después de liberar un bloqueo la transacción no adquiere ningún otro bloqueo Entonces, todas las
ejecuciones intercaladas de esas transacciones son serializables.
• Una transacción que obedece las reglas a) y b) se dice que satisface el protocolo de bloqueo en dos fases.
Ventajas del Bloque de Dos Fases
• Su principal ventaja es que garantiza la seriabilidad, lo que no se consigue usando simplemente
bloqueos.
Desventajas del Bloqueo de Dos
Fases
• Bloquea los elementos que podrían ser desbloqueados tras su
uso ocupados hasta la segunda fase, impidiendo que otras
transacciones que los necesiten los utilicen.
• Esto hace que el rendimiento de este protocolo se degrade
conforme aumenta el grado de concurrencia;
• No permite todos los planes serializables posibles.
• La implementación de este este bloqueo depende del
programador, que puede no realizar su tarea convenientemente.
Tipos de Bloqueo
1. Conservador o estático
• Requiere que una transacción bloquee todos los elementos a los que tendrá acceso antes de comenzar a
ejecutarse. Una vez bloqueados, no habrá conversión de bloqueos de lectura a escritura.
• Si no es posible bloquearlos todos, la transacción no bloqueará nada y esperará a poder bloquear todos los
elementos necesarios en su totalidad.
• Como principal inconveniente, en la práctica, es muy difícil saber qué elementos serán necesarios durante la
transacción antes de que esta comience, si no imposible. es interesante destacar que, al tener que esperar a
poder bloquear todos los elementos que la transacción necesite, este protocolo reduce la concurrencia.
Bloqueo Conservador o Estático
Bloqueo Estricto
• La transacción no libera ninguno de sus
bloqueos de escritura antes de confirmarse o
abortar. Este tipo de bloqueo garantiza planes
estrictos en cuanto a recuperabilidad
(recuperable es un plan que, una vez
confirmada la transacción, no será necesaria
deshacerla). Sin embargo, puede sufrir
interbloqueos.
• El bloqueo estricto de dos fases Para cumplir con el protocolo S2PL, una transacción debe cumplir con 2PL y
liberar sus bloqueos de escritura (exclusivos) solo después de que haya finalizado, es decir, si se confirma o
se cancela . Por otro lado, los bloqueos de lectura (compartidos) se liberan regularmente durante la fase 2.
Este protocolo no es apropiado en árboles B porque causa un cuello de botella (mientras que los árboles B
siempre comienzan a buscar desde la raíz principal).
Bloqueo Estricto
Bloqueo Riguroso
Éste es una variación del bloqueo de dos fases estricto y consiste en que ningún tipo de bloqueo es
liberado antes de confirmar o abortar alguna transacción. Es más fácil de implementar.
Bibliografias
• https://www.glosarioit.com/Bloqueo_de_dos_fases
• https://prezi.com/e294shlpr_dy/bloqueo-de-dos-fases/?frame=0682635089b7c6bd0e6a36ec189fd37cd260f93a
• https://es.other.wiki/wiki/Two-phase_locking#Strict_two-phase_locking
• Salvador Jesus Romero Castellano (Ed.). (2005, enero). Metodos de control de concurrencia en Base de Datos
(N.o 1). Salvador Jesus Romero Castellano.
• Universidad de Concepción, Chile. (2014, septiembre). Concurrencia (N.o 1). M. Andrea Rodríguez-Tastets.
Gracias por su atencion

PROTOCOLO DE BLOQUEO EN 2 FASES

  • 1.
    Protocolo de Bloqueoen dos fases Universidad Mariano Gálvez Facultad de ingeniería en sistemas Curso: Base de datos 2 Integrantes: Geovani Mendoza 9959-18-15407 Angel Chacón 9959-18-5201 Sebastián Moreira 9959-18-7960
  • 2.
    Que es elBloqueo de Dos Fases? • El protocolo de bloqueo de dos fases se utiliza para garantizar que las transacciones se serialicen. En el protocolo de bloqueo de dos fases, cada transacción debe emitir todas las solicitudes de bloqueo antes de que pueda emitir cualquier solicitud de desbloqueo. • En él, todas las operaciones de bloqueo preceden a la primera operación de desbloqueo de la transacción. El proceso se puede así dividir en dos fases, la fase de bloqueo y de desbloqueo.
  • 3.
    Fases del Bloqueo •Existen dos fases en el Bloqueo, la primera es una fase creciente durante la cual los bloqueos son adquiridos, y una fase decreciente durante la cual los bloqueos son liberados. • Las dos fases del protocolo son: • Fase de expansión (crecimiento): esta fase permite a la transacción emitir cualquier nueva solicitud de bloqueo que se requiera. Las solicitudes de desbloqueo no están permitidas en esta fase. • Fase de reducción: esta fase permite que la transacción libere bloqueos adquiridos en la fase de expansión. Las nuevas solicitudes de bloqueo no están permitidas en esta fase.
  • 4.
    Teorema de bloquede 2 Fases Teorema: Si todas las transacciones obedecen las siguientes reglas: • a) Antes de operar sobre cualquier objeto la transacción debe adquirir primero un bloqueo sobre ese objeto. • b) Después de liberar un bloqueo la transacción no adquiere ningún otro bloqueo Entonces, todas las ejecuciones intercaladas de esas transacciones son serializables. • Una transacción que obedece las reglas a) y b) se dice que satisface el protocolo de bloqueo en dos fases.
  • 5.
    Ventajas del Bloquede Dos Fases • Su principal ventaja es que garantiza la seriabilidad, lo que no se consigue usando simplemente bloqueos.
  • 6.
    Desventajas del Bloqueode Dos Fases • Bloquea los elementos que podrían ser desbloqueados tras su uso ocupados hasta la segunda fase, impidiendo que otras transacciones que los necesiten los utilicen. • Esto hace que el rendimiento de este protocolo se degrade conforme aumenta el grado de concurrencia; • No permite todos los planes serializables posibles. • La implementación de este este bloqueo depende del programador, que puede no realizar su tarea convenientemente.
  • 7.
    Tipos de Bloqueo 1.Conservador o estático • Requiere que una transacción bloquee todos los elementos a los que tendrá acceso antes de comenzar a ejecutarse. Una vez bloqueados, no habrá conversión de bloqueos de lectura a escritura. • Si no es posible bloquearlos todos, la transacción no bloqueará nada y esperará a poder bloquear todos los elementos necesarios en su totalidad.
  • 8.
    • Como principalinconveniente, en la práctica, es muy difícil saber qué elementos serán necesarios durante la transacción antes de que esta comience, si no imposible. es interesante destacar que, al tener que esperar a poder bloquear todos los elementos que la transacción necesite, este protocolo reduce la concurrencia. Bloqueo Conservador o Estático
  • 9.
    Bloqueo Estricto • Latransacción no libera ninguno de sus bloqueos de escritura antes de confirmarse o abortar. Este tipo de bloqueo garantiza planes estrictos en cuanto a recuperabilidad (recuperable es un plan que, una vez confirmada la transacción, no será necesaria deshacerla). Sin embargo, puede sufrir interbloqueos.
  • 10.
    • El bloqueoestricto de dos fases Para cumplir con el protocolo S2PL, una transacción debe cumplir con 2PL y liberar sus bloqueos de escritura (exclusivos) solo después de que haya finalizado, es decir, si se confirma o se cancela . Por otro lado, los bloqueos de lectura (compartidos) se liberan regularmente durante la fase 2. Este protocolo no es apropiado en árboles B porque causa un cuello de botella (mientras que los árboles B siempre comienzan a buscar desde la raíz principal). Bloqueo Estricto
  • 11.
    Bloqueo Riguroso Éste esuna variación del bloqueo de dos fases estricto y consiste en que ningún tipo de bloqueo es liberado antes de confirmar o abortar alguna transacción. Es más fácil de implementar.
  • 12.
    Bibliografias • https://www.glosarioit.com/Bloqueo_de_dos_fases • https://prezi.com/e294shlpr_dy/bloqueo-de-dos-fases/?frame=0682635089b7c6bd0e6a36ec189fd37cd260f93a •https://es.other.wiki/wiki/Two-phase_locking#Strict_two-phase_locking • Salvador Jesus Romero Castellano (Ed.). (2005, enero). Metodos de control de concurrencia en Base de Datos (N.o 1). Salvador Jesus Romero Castellano. • Universidad de Concepción, Chile. (2014, septiembre). Concurrencia (N.o 1). M. Andrea Rodríguez-Tastets.
  • 13.