El presente documento presenta uno de los niveles de aislamiento en las transacciones de base de datos. Una transacción es un conjunto de órdenes que se ejecutan formando una unidad de trabajo, es decir, en forma indivisible.
Enviado por osaka1 • 11 de Mayo de 2017 • Informe • 512 Palabras (3 Páginas) • 236 Visitas
Universidad Tecnológica de Tula-Tepeji
Repeatable-Read
Base de datos para aplicaciones
Ing. Oscar Jiménez Aguilar
Integrantes:
Diana Isabel Fernández Hernández
Erika Calixto Canuto
Hugo Garduño Zúñiga
Karla Flores Fuentes
Mónica Moreno Bárcenas
Rodrigo Castillo Moreno
Saúl Ramírez Obregón
8ITI-G1
22 de febrero de 2017
El presente documento presenta uno de los niveles de aislamiento en las transacciones de base de datos. Una transacción es un conjunto de órdenes que se ejecutan formando una unidad de trabajo, es decir, en forma indivisible.
Las transacciones especifican un nivel de aislamiento para determinar el grado en que se debe aislar una transacción de las modificaciones que se puedan hacer por otras transacciones. Los niveles de aislamiento se describen en tanto los bloqueos que permitan.
En los sistemas de base de datos, el aislamiento plantea cómo la integridad de las transacciones es visible para otros usuarios y sistemas.
Un nivel de aislamiento más bajo aumenta la capacidad de muchos usuarios para acceder a los datos al mismo tiempo, pero aumenta el número de efectos de concurrencia (como lecturas sucias o actualizaciones pérdidas) que los usuarios pueden encontrar. Por el contrario, un nivel de aislamiento más alto reduce los tipos de efectos de concurrencia que los usuarios pueden encontrar, pero requiere más recursos del sistema y aumenta las posibilidades de que una transacción bloquee a otro.
Repeatable-Read
Especifica que ninguna otra transacción puede modificar ni eliminar datos que la transacción actual haya leído hasta que ésta no se confirme.
Permite hacer inserciones en las tablas.
Después de analizar el funcionamiento de este nivel, nos hemos dado cuenta que al usar rollback al término de la sentencia se aplican los bloqueos, pero si se escribe commit permite hacer modificaciones a las tablas.
Una transacción ejecutada en este nivel de aislamiento sólo puede leer información comiteada, con la garantía de que mientras dure la transacción nadie va a poder leer esos datos. Esto significa que, si vuelvo a leer esos datos dentro de la transacción, tengo total seguridad de que el resultado va a ser exactamente el mismo, ya que están bloqueados para la escritura en otra transacción.
Tipos de lecturas permitidas por el nivel de aislamiento
Nivel | Sucia | No repetible | Fantasma |
Repeatable-read | NO | NO | SI |
Lectura sucia, (también conocida como dependencia no confirmada): Permite a una transacción leer datos de una fila que ha sido modificada por otra transacción en ejecución y que aún no ha sido confirmada.
Lectura no repetible: Es cuando durante la ejecución de una transacción, una fila se recupera dos veces y los valores dentro de la fila son diferentes entre las lecturas.
Lectura fantasma: Ocurre cuando, en el transcurso de una transacción, se ejecutan dos consultas idénticas y la colección de filas devueltas por la segunda consulta es diferente de la primera.
...