Categorias: Todos - recuperación - transacción - coordinador - confiabilidad

por Danyhet 1 4 anos atrás

303

Confiabilidad de una base de datos distribuida

En los sistemas de bases de datos distribuidas, asegurar la confiabilidad es crucial. Se utilizan varios protocolos como REDO/UNDO para mantener la integridad de los datos durante y después de las transacciones.

Confiabilidad de una base de datos distribuida

Confiabilidad de una base de datos distribuida

Type in the name of the company you are going to have an interview with.

La confiabilidad engloba varias actividades y una de ellas es el planteamiento de modelos de confiabilidad, esto es fundamentalmente la probabilidad de supervivencia del sistema. Se expresa como una función de las confiabilidades de los componentes o subsistemas, que generalmente, estos modelos se encuentran dependiendo del tiempo.

Protocolo 2PC de confiabilidad distribuida.

What can you do for this company that someone else can't?


Type in several unique traits that will turn you into the perfect candidate for the position.

El protocolo procede como sigue:
Cuando el coordinador ha recibido un mensaje ACK de todos los participantes, escribe un nuevo tipo de registro en la bitácora, llamado un registro “completo”.
Todos los participantes envían un mensaje de acuse de recibo (ACK) al coordinador, y ejecutan las acciones requeridas para terminar (commit) o abortar (abort) la subtransacción.
Finalmente:
• Todos los participantes escriben un commit o abort en la bitácora basados en el mensaje recibido del coordinador (desde este momento el procedimiento de recuperación es capaz de asegurar que el efecto de la subtransacción no será perdido).
• El coordinador envía mensaje de COMMIT o ABORT según sea el caso para su ejecución.
• El coordinador registra la decisión tomada en almacenamiento estable; es decir, escribe “global_commit” o “global_abort” en la bitácora.
Fase dos:
• El coordinador decide el commit o abort en la transacción como un resultado de las respuestas que ha recibido de los participantes. Si todos respondieron READY, decide hacer un commit. Si alguno ha respondido ABORT o no ha respondido en un intervalo de tiempo determinado se aborta la transacción.
• Cada participante responde con un mensaje READY o ABORT al coordinador.
• Cada participante escribe “ready” (y registra las subtransacciones) en su propia bitácora si está listo o “abort” de lo contrario.
• El coordinador escribe “prepare” en la bitácora y envía un mensaje donde pregunta a todos los participantes si preparan el commit (PREPARE).
Fase uno:
El protocolo 2PC básico un agente (un agente-DTM en el modelo) con un rol especial. Este es llamado el coordinador; todos los demás agentes que deben hacer commit a la vez son llamados participantes.

Puntos de verificación (checkpoints).

Research the company

You should find and learn as much as you can about the company where you are having an interview.

The interviewer will want to see what you know about them and why you chose the company.

Doing your homework will show that you are really interested.

El punto de verificación es un registro que se genera en la bitácora para concluir en todo lo que se encuentra antes de ese punto está correcto y verificado.

Why do you want to work for this company?


Think of what you can do for them, not of what they can do for you.

Protocolos REDO/UNDO

Operación UNDO.
De forma similar a la base de datos volátil, el registro de la base de datos se mantiene en memoria principal (llamada los buffers de registro) y se escribe al almacenamiento estable (llamado registro estable). Las páginas de registro se pueden escribir en el registro estable de dos formas: síncrona o asíncrona
Operación REDO.
Por otra parte, es posible que el administrador del buffer haya realizado la escritura en la base de datos estable de algunas de las páginas de la base de datos volátil correspondientes a la transacción
Esta información puede incluir entre otras cosas: -El identificador de la transacción, -El tipo de operación realizada, -Los datos accesados por la transacción para realizar la acción -El valor anterior del dato -El valor nuevo del dato.
El registro de la base de datos contiene información que es utilizada por el proceso de recuperación para restablecer la base de datos a un estado consistente.