Sei sulla pagina 1di 2

Transacción(inicio BD consistente, ejecución BD inconsistente, final BD consistente): secuencia

de operaciones llevadas a cabo por un programa de aplicación que lee y actualiza el contenido de la
base de datos.
Propiedades:
• Atomicidad: todas las operaciones se realizan o ninguna.
• Consistencia: llevar a la BD de un estado consistente a otro.
• Aislamiento: las modificaciones realizadas por una transacción deben aislarse de las
modificaciones de otras transacciones concurrentes.
• Durabilidad: una vez terminada la transacción, no se puede deshacer.
Estados:
• Activa: durante la ejecución.
• Parcialmente confirmada: después de ejecutarse la última instrucción.
• Fallida: cuando no termina de ejecutarse normalmente.
• Abortada: después del retroceso.
• Confirmada: tras completarse con éxito.

Bloqueos: impiden que los usuarios lean o cambien los datos de una transacción que no se ha
completado. Los bloqueos hacen posible la serialización de transacciones.
Concurrencia: capacidad de los SGBD de permitir que múltiples transacciones sean ejecutadas al
mismo tiempo.
Control de concurrencia: control para que las modificaciones de un usuario no interfieran en las de
otros.
CC Pesimista: (validar, leer, computar, escribir)
• Cuando se empieza a leer los datos, bloquea a los demás usuarios, hasta que el usuario que
esta realizando la lectura termine.
• Se implementa cuando la contención de los datos es alta y el costo de bloquear los datos sea
menor que el de deshacer transacciones, si se producen conflictos de concurrencia.
CC Optimista: (leer, computar, escribir, validar)
• No bloquea la lectura de los datos inicialmente.
• Se implementa cuando la contención de los datos es baja y el costo de deshacer una
transacción sea menor que el de bloquear los datos cuando se leen.
• Si los datos no han cambiado desde que se leyeron, la transacción se deshace y el usuario
debe volver a empezar.
Granularidad: se refiere a que tan bueno o efectivo se requiere que sea un bloqueo.
• BG Pesada: se bloquea la tabla completa. Se utilizan menos recursos, pero se aumenta el
riesgo de inconsistencia de los datos (que actualicen varios usuarios).
• BG Buena: se bloquea una fila especifica. Se utilizan más recursos, pero se asegura la
consistencia de los datos.
Seriabilidad: cuando todas las operaciones de una transacción se ejecutan antes de cualquier
operación de la otra transacción.
Interbloqueo: cuando dos o mas subprocesos intentan bloquear el acceso a la misma información en
una BD. Es visible por el tiempo de respuesta (debe ser 1s). si demora de 30s a 60s se determina que
los subprocesos están estancados.
SGBD manejan 4 lenguajes:
• DML (commit al final): comandos que permiten manipular la data (ordenar, insertar, actualizar,
filtrar, agrupar y extraer).
• DDL (commit implícito): se crean objetos (tablas, procedimientos, funciones, trigger, vistas).
• DCL (commit implícito): controlan la seguridad y los permisos (Recursos Humanos).
o GRANT: permite dar permiso a uno o varios usuarios para realizar tareas determinadas.
o REVOKE: permite eliminar permisos que previamente se han concedido.
• TCL (commit implícito): permite manejar las transacciones (COMMIT, ROLLBACK).
Bloqueos DML Oracle:
• B Compartido: a nivel de tabla. Diversas transacciones pueden adquirir bloqueos compartido
en el mismo recurso.
• B Exclusivo: para cada fila. Previenen que la fila sea cambiada por otras transacciones hasta
que la transacción que bloqueo la fila sea cometida o deshecha.
Bloqueos DDL Oracle: ocurren cuando se modifica un objeto de la BD.

• Commit: finaliza la transacción haciendo permanente los cambios.


• SAVEPOINT name: marca un punto de la transacción actual.
• ROLLBACK: finaliza una transacción actual descartando todos los cambios.
• ROLLBACK to SAVEPOINT name: retorna la transacción actual hasta la marca especificada,
deshace todos los cambios después de la marca.
• AUTOCOMMIT: cada sentencia DML será cometida inmediatamente es ejecutada.

Nota: Recursos humanos establece los roles. El dueño es el que visualiza los datos antes de los
cambios. Los usuarios son los dueños de los datos. El administrador de los datos es el que levanta la
BD física.

Potrebbero piacerti anche