Concepto de Transaccion

download Concepto de Transaccion

of 1

description

TAREA

Transcript of Concepto de Transaccion

  • &RQFHSWRVGH3URFHVDPLHQWRGH7UDQVDFFLRQHV

    '%DVHVGHDWRV&XUVR

    Tema 6.

    CONCEPTOS DE PROCESAMIENTO DE TRANSACCIONES

    TRANSACCIONES

    Una transaccin es una unidad lgica de trabajo o procesamiento (ejecucin de un programa queincluye operaciones de acceso a la base de datos).

    Una transaccin es una secuencia de operaciones que llevan la base de datos desde un estado deconsistencia1 a otro estado de consistencia, por esto suele decirse tambin que la transaccin es unaunidad lgica de integridad.

    Cuando mltiples transacciones son introducidas en el sistema por varios usuarios, es necesarioevitar que interfieran entre ellas de forma tal que provoquen que la BD quede en un estado no con-sistente; desde este punto de vista, podemos ver una transaccin como una unidad lgica de con-currencia.

    Cuando ocurre un fallo que provoca la cada del sistema, en el momento en el que haba variastransacciones en curso de ejecucin, muy probablemente dejar errneos los datos en la BD (estadoinconsistente); en estas circunstancias, se debe garantizar que la BD pueda ser recuperada a unestado en el cual su contenido sea consistente, por esto una transaccin es considerada tambinuna unidad lgica de recuperacin.

    La idea clave es que una transaccin debe ser atmica, es decir, las operaciones que la componendeben ser ejecutadas en su totalidad o no ser ejecutadas en absoluto.

    Una sentencia de definicin o manipulacin de datos ejecutada de forma interactiva (por ejemploutilizar el SQL*Plus de Oracle para realizar una consulta) puede suponer el inicio de una transac-cin. Asimismo, la ejecucin de una sentencia SQL por parte de un programa que no tiene ya unatransaccin en progreso, supone la iniciacin de una transaccin.

    Toda transaccin finaliza con una operacin de commit (confirmar) o bien con una operacin derollback (anular, abortar o revertir).Tanto una operacin como la otra puede ser de tipo explcito (si la propia transaccin (su cdigo)contiene una sentencia COMMIT o ROLLBACK) o implcito (si dicha operacin es realizada por elsistema de forma automtica, por ejemplo tras detectar una terminacin normal (xito) o anormal(fallo) de la transaccin).

    Por defecto, una vez finalizada una transaccin, si todas sus operaciones se han realizado con xi-to, se realiza un COMMIT implcito de dicha transaccin; y si alguna de ellas tuvo problemas, selleva a cabo un ROLLBACK implcito de la transaccin (es decir, se deshacen todas las operacionesque haba realizado hasta el momento del fallo).

    1 El conjunto de valores almacenados en la base de datos cumple toda restriccin de integridad especificada en el es-

    quema, as como cualesquiera otras restricciones que deban cumplirse en la base de datos.