Propiedad de aislamiento en una base de datos

El aislamiento controla cómo y cuándo se realizan cambios en una base de datos El aislamiento es la propiedad de nivel de base de datos que controla cómo y cuándo se realizan los cambios y si se hacen visibles entre sí, los usuarios y los sistemas.

El aislamiento controla cómo y cuándo se realizan cambios en una base de datos

El aislamiento es la propiedad de nivel de base de datos que controla cómo y cuándo se realizan los cambios y si se hacen visibles entre sí, los usuarios y los sistemas. Uno de los objetivos del aislamiento es permitir que se produzcan múltiples transacciones al mismo tiempo sin afectar la ejecución de cada una.

El aislamiento es una parte integral de las propiedades transaccionales de la base de datos. Es la tercera propiedad de ACID (Atomicidad, Consistencia, Aislamiento, Durabilidad) y estas propiedades aseguran que los datos sean consistentes y precisos.

Cómo funciona el aislamiento

Aquí hay un ejemplo: si Joe emite una transacción contra una base de datos al mismo tiempo que Mary emite una transacción diferente, ambas transacciones deberían operar en la base de datos de manera aislada. La base de datos debe realizar la transacción completa de Joe antes de ejecutar la de Mary o viceversa. Esto evita que la transacción de Joe lea datos intermedios producidos como un efecto secundario de parte de la transacción de Mary que eventualmente no se comprometerá con la base de datos.

Es importante tener en cuenta que la propiedad de aislamiento no garantiza que una transacción específica se ejecutará primero, solo que no interferirán entre sí.

Niveles de aislamiento

Hay cuatro niveles de aislamiento. Un mayor aislamiento limita la capacidad de los usuarios para acceder simultáneamente a los mismos datos. Cuanto mayor sea el nivel de aislamiento, se requieren mayores recursos del sistema y es más probable que las transacciones de la base de datos se bloqueen entre sí.

A medida que se reduce el nivel de aislamiento, hay más posibilidades de que los usuarios encuentren fenómenos de lectura, como dependencias no confirmadas, también conocidas como lecturas sucias, que dan como resultado la lectura de datos de una fila que ha sido modificada por otro usuario pero que aún no se ha confirmado. a la base de datos.

  1. Serializable es el nivel más alto, lo que significa que las transacciones se completarán antes de que otra transacción pueda comenzar.
  2. Las lecturas repetibles permiten acceder a las transacciones una vez que la transacción ha comenzado, incluso si no se ha terminado.
  3. Leer confirmado permite acceder a los datos después de que los datos se hayan confirmado en la base de datos, pero no antes.
  4. Leer sin confirmar es el nivel más bajo de aislamiento y permite acceder a los datos antes de que se realicen los cambios.
Rate article
labsfabs.com
Add a comment