Transacción.
Enviado por goliat26 • 3 de Septiembre de 2014 • Tesis • 1.766 Palabras (8 Páginas) • 270 Visitas
NOMBRE: MONTEGUIS VILLARREAL 4-770-405
LISBETH PATIÑO 4-772-927
1. Que es una transacción.
Una transacción en un Sistema de Gestión de Bases de Datos (SGBD), es un conjunto de órdenes que se ejecutan formando una unidad de trabajo, es decir, en forma indivisible o atómica.
2. Evaluación de los resultados de una transacción.
Si las operaciones no modifican ningún dato, sino que sólo recuperan datos, la transacción es de sólo lectura. Las transacciones más conflictivas pero más habituales, son las que modifican la base de datos. Las transacciones no pueden violar ninguna restricción de integridad de la base de datos, es decir, si la base de datos era consistente cuando empezó una transacción, también debe serlo cuando termine con éxito.
3. Propiedades de una transacción.
Atomicidad: es la propiedad que asegura que la operación se ha realizado o no, y por lo tanto ante un fallo del sistema no puede quedar a medias.
Consistencia: Integridad. Es la propiedad que asegura que sólo se empieza aquello que se puede acabar. Por lo tanto se ejecutan aquellas operaciones que no van a romper las reglas y directrices de integridad de la base de datos.
Aislamiento: es la propiedad que asegura que una operación no puede afectar a otras. Esto asegura que la realización de dos transacciones sobre la misma información sean independientes y no generen ningún tipo de error.
Durabilidad: es la propiedad que asegura que una vez realizada la operación, ésta persistirá y no se podrá deshacer aunque falle el sistema.
4. Administración de transacciones con SQL.
La administración de las transacciones de SQL Server es un paso importante para asegurar la fluidez de las operaciones y evitar los errores por bloqueos.
5. Bitácoras de transacción.
La transacción log (en español bitácora de transacciones) es un componente escencial de SQL Server, el cual la utiliza para registrar un historial de cada modificación que sufre la base de datos como resultado de las transacciones.
6. Control de Concurrencia
El control de transacciones concurrentes en una base de datos brinda un eficiente desempeño del Sistema de Base de Datos, puesto que permite controlar la ejecución de transacciones que operan en paralelo, accesando a información compartida y, por lo tanto, interfiriendo potencialmente unas con otras.
7. Actualizaciones perdidas
Para realizar una recuperación de una base de datos a la copia de seguridad disponible más actualizada hay que restaurar la última copia de seguridad completa y hay que aplicar actualizaciones a dicha copia de seguridad de los archivos de registro de transacciones archivados. Para poder utilizar archivos de registro de transacciones archivados para la recuperación de bases de datos, el ID del registro de transacciones actual debe coincidir con el de los archivos de registro archivados.
8. Datos no registrados
El fenómeno de datos no registrados ocurre cuando dos transacciones T1 Y T2 se ejecutan de manera concurrente y la primera (T1) se retrocede después de la segunda (T2) ya ha tenido acceso a los datos.
9. Recuperaciones inconsistentes
Las recuperaciones inconsistentes son posibles durante la ejecución de la transacción haciendo incorrecto el resultado de la ejecución.
10. El planificador
El planificador está encargado de ordenar un conjunto de transacciones u operaciones que se deseen realizar sobre una base de datos. Cualquier orden en el que se decidan hacer este conjunto de operaciones se denomina planificación. Parte del trabajo del planificador es realizar estas operaciones de forma que sean serializables y recuperables.
Control de concurrencia con método de bloqueo
El objetivo de los métodos de control de concurrencia es garantizar la no inferencia o la propiedad de aislamiento de transacciones que se ejecutan de manera concurrente. Los distintos objetivos atacan el problema garantizando que las transacciones se ejecuten en un plan que sea serializable, es decir, que el resultado sea equivalente a el resultante de ejecutar un plan en serie.
Protocolos basados en técnicas de bloqueo
Cabe destacar antes de comenzar el estudio de los protocolos basados en bloqueos que son los más utilizados por los SGBD comerciales. Los demás tienen un alcance más teórico que práctico. Un bloqueo es una variable asociada a un elemento de datos de la base de datos, usada para restringir las operaciones que se pueden aplicar sobre él. Existen varios tipos de bloqueo: binarios (de propiedades limitadas), compartidos, exclusivos (usados en la práctica), y bloqueos de certificación. Las operaciones sobre bloqueos se deben implementar como secciones críticas, es decir, deforma indivisible; el SGBD no deberá alternar sus instrucciones con otras.
Esquema esperar-morir y herir-esperar
1. El esquema esperar-morir está basado en una técnica sin expropiación. Cuando la transacción Ti solicita un elemento de datos que posee actualmente TJ, Ti puede esperar sólo si tiene una marca temporal más pequeña que la de TJ (es decir, Ti es anterior a TJ). En otro caso Ti se retrocede (muere). Por ejemplo, supóngase que las transacciones T22, T23 y T24 tienen marcas temporales 5, 10 y 15 respectivamente. Si T22 solicita un elemento de datos que posee T23 entonces T22 tiene que esperar. Si T24 solicita un elemento de datos que posee T23 entonces T24 se retrocede.
2. El esquema herir-esperar está basado en una técnica de expropiación. Es el opuesto del esquema esperar-morir. Cuando la transacción Ti solicita un elemento de datos que posee actualmente TJ, Ti puede esperar
...