- ¿Qué es una transacción?
Una transacción es una unidad de la ejecución de un programa que lee y escribe datos a y desde la Base de Datos. Puede consistir en varias operaciones de acceso a la base de datos. Una Transacción está delimitada por instrucciones de inicio transacción y fin transacción (la transacción consiste en todas las operaciones que se ejecutan entre inicio transacción y fin transacción).
- ¿Qué significa ACID? y defina cada una de las palabras que forman las siglas
- ¿Qué significa Tx?
- ¿Para que nos sirve el Rollback?
Sentencia ROLLBACK
Señala el final sin éxito de una transacción, elimina todas las modificaciones de datos realizadas desde el inicio de la transacción y también libera los recursos que retiene la transacción.
- defina Integridad de datos
- defina concurrencia
- Defina Grado de consistencia
Consistencia es un término más amplio que el de integridad. Podría definirse como la coherencia entre todos los datos de la base de datos. Cuando se pierde la integridad también se pierde la consistencia. Pero la consistencia también puede perderse por razones de funcionamiento.
Una transacción finalizada (confirmada parcialmente) puede no confirmarse definitivamente (consistencia).Si se confirma definitivamente el sistema asegura la persistencia de los cambios que ha efectuado en la base de datos. Si se anula los cambios que ha efectuado son deshechos.
- Mencione aspectos relacionados al procesamiento de transacciones
-Modelo de estructura de transacciones. Es importante considerar si las transacciones son planas o pueden estar anidadas.
-Consistencia de la base de datos interna. Los algoritmos de control de datos semántico tienen que satisfacer siempre las restricciones de integridad cuando una transacción pretende hacer un commit.
-Protocolos de confiabilidad. En transacciones distribuidas es necesario introducir medios de comunicación entre los diferentes nodos de una red para garantizar la atomicidad y durabilidad de las transacciones. Así también, se requieren protocolos para la recuperación local y para efectuar los compromisos (commit) globales.
-Algoritmos de control de concurrencia. Los algoritmos de control de concurrencia deben sincronizar la ejecución de transacciones concurrentes bajo el criterio de correctitud. La consistencia entre transacciones se garantiza mediante el aislamiento de las mismas.
-Protocolos de control de réplicas. El control de réplicas se refiere a cómo garantizar la consistencia mutua de datos replicados. Por ejemplo se puede seguir la estrategia read-one-write-all (ROWA).
- defina los estados de una transacción:
- Activa (Active): el estado inicial; la transacción permanece en este estado durante su ejecución.
-
Parcialmente comprometida (Uncommited): Después de ejecutarse la última transacción.
-
Fallida (Failed): tras descubrir que no se puede continuar la ejecución normal.
-
Abortada (Rolled Back):
después de haber retrocedido la transacción y restablecido la base de
datos a su estado anterior al comienzo de la transacción.
-
Comprometida (Commited): tras completarse con éxito.
- El estándar ANSI/ISO SQL define cuatro niveles de aislamiento transaccional en función de tres eventos que son permitidos o no dependiendo del nivel de aislamiento. Estos eventos son:


