En tecnologías de bases de datos , una reversión es una operación que devuelve la base de datos a un estado anterior. Las reversiones son importantes para la integridad de la base de datos , ya que permiten restaurarla a una copia limpia incluso después de que se hayan realizado operaciones erróneas. [ 1 ] Son cruciales para recuperarse de fallos del servidor de la base de datos; al revertir cualquier transacción que estuviera activa en el momento del fallo, la base de datos se restaura a un estado coherente.
La función de reversión se suele implementar con un registro de transacciones , pero también se puede implementar mediante control de concurrencia multiversión .
reversión en cascada
En los sistemas de bases de datos, se produce una reversión en cascada cuando una transacción (T1) falla y debe revertirse. Otras transacciones que dependen de las acciones de T1 también deben revertirse debido a su fallo, lo que genera un efecto en cascada. Es decir, el fallo de una transacción provoca el fallo de muchas otras.
Las técnicas prácticas de recuperación de bases de datos garantizan una reversión sin cascada; por lo tanto, una reversión en cascada no es un resultado deseable. La reversión en cascada la programa el administrador de la base de datos (dba).
SQL
SQL se refiere al Lenguaje de Consulta Estructurada, un tipo de lenguaje utilizado para acceder, actualizar y manipular bases de datos. En SQL , ROLLBACKes un comando que hace que todos los cambios de datos desde la última START TRANSACTIONmodificación BEGINsean descartados por los sistemas de gestión de bases de datos relacionales (RDBMS), de modo que el estado de los datos se "revierte" al estado anterior a dichos cambios. [ 2 ]
El ROLLBACKcomunicado también liberará cualquier punto de guardado existente que pueda estar en uso.
En la mayoría de los dialectos SQL, ROLLBACKlas operaciones son específicas de la conexión. Esto significa que si se establecen dos conexiones a la misma base de datos, una operación ROLLBACKrealizada en una conexión no afectará a ninguna otra. Esto es fundamental para una concurrencia adecuada .
Uso fuera de las bases de datos
Las operaciones de reversión no son exclusivas de las bases de datos: cualquier sistema distribuido con estado puede utilizarlas para mantener la coherencia . Algunos ejemplos de sistemas distribuidos que admiten reversiones son las colas de mensajes y los sistemas de gestión de flujos de trabajo . En términos más generales, cualquier operación que restablezca un sistema a su estado anterior antes de que se ejecute otra operación o serie de operaciones puede considerarse una reversión.
Véase también
Notas
Referencias
- Ramez Elmasri (2007). Fundamentos de los sistemas de bases de datos . Pearson Addison Wesley . ISBN 978-0-321-36957-4.
- "Transacción ROLLBACK" , Microsoft SQL Server.
- "Comandos SQL" , MySQL.
- teoría de bases de datos
- Procesamiento de transacciones
- Computación reversible
- Sistemas de gestión de bases de datos