1. ¿Qué es una transacción?
Una Transacción es un unidad de la ejecución de un
programa que accede y, posiblemente, actualiza varios elementos de datos.
2. ¿Qué significa ACID? y defina cada una de
las palabras que forman las siglas:
·
Atomicidad: O
se realizan adecuadamente, en la base de datos, todas las operaciones de
la transacción o no se realiza ninguna de ellas.
Consistencia: La ejecución aislada de la transacción (es decir, sin otra transacción que se ejecute concurrentemente) conserva la consistencia de la base de datos.
Aislamiento: Aunque se ejecuten varias transacciones concurrentemente, el sistema garantiza cada transacción ignora al resto de transacciones.
Durabilidad: Tras la finalización con éxito de una transacción, los cambios realizados en la base de datos permanecen, incluso si hay fallos en el sistema.
3. ¿Qué significa Tx?
Transacción
4. ¿Para qué nos sirve el Rollback?
Para devolver a la base de datos a algún estado
previo.
5. Defina Integridad de datos.
Hace referencia a que todas las características de los
datos (reglas, definiciones, fechas, etc) deben ser correctos para que los
datos estén completos.
6. Defina concurrencia.
Se refiere al hecho de que los DBMS(Sistema de Admon. de
BD) permiten que muchas Tx puedan acceder a una misma base de datos a la vez.
7. Defina Grado de consistencia
8. Mencione aspectos relacionados al procesamiento de transacciones:
Modelo
de estructura de transacciones: Es importante considerar si
las transacciones son planas o anidadas.
Consistencia
de la base de datos interna: Los algoritmos de control de
datos tienen que satisfacer las restricciones de integridad cuando una
transacción pretende hacer un compromiso.
Protocolos
de confiabilidad: En transacciones distribuidas es necesario
introducir medios de comunicación entre los diferentes nodos de una red para
garantizar la atomicidad de las transacciones.
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 replicas: Se refiere a como garantizar la
consistencia mutua de datos replicados.El procesamiento de transacciones
básicamente consiste en una serie de modificaciones (transacciones)
a un determinado recurso del sistema (por ejemplo una base de datos) y en donde
se define un punto de inicio y un punto de terminación que define un bloque
entre el conjunto de operaciones que son realizadas.
9. Defina los estados de una transacción:
Activa
(estado inicial): la transacción permanece en
este estado durante su ejecución.
Parcialmente
Comprometida: la transacción pasa a este estado cuando acaba de
realizar la última instrucción.
Fallida: la
transacción pasa a este estado tras descubrir que no puede continuar la ejecución
normal.
Abortada: la
transacción pasa a este estado después de haber restablecido la base de
datos a su estado anterior.
Comprometida: la
transacción pasa a este estado tras completarse con éxito.
10. 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:
Lectura
sucia. Las sentencias SELECT son ejecutadas sin
realizar bloqueos, pero podría usarse una versión anterior de un registro. Por
lo tanto, las lecturas no son consistentes al usar este nivel de
aislamiento.
Lectura
norepetible. Una transacción vuelve a leer datos que
previamente había leído y encuentra que han sido modificados o eliminados por
una transacción cursada.
Lectura
fantasma. Una transacción vuelve a ejecutar una consulta,
devolviendo un conjunto de registros que satisfacen una condición de búsqueda y
encuentra que otros registro que satisfacen la condición han sido insertadas
por otra transacción cursada.
No hay comentarios:
Publicar un comentario