Sobes.tech
Junior — Middle

¿Puedes enumerar los niveles de aislamiento de transacciones en los sistemas de gestión de bases de datos?

sobes.tech AI

Respuesta de la IA

En los sistemas de gestión de bases de datos (SGBD), generalmente se identifican cuatro niveles principales de aislamiento de transacciones, que determinan cómo y cuándo los cambios de una transacción se vuelven visibles para otras:

  1. Lectura No Confirmada (Read Uncommitted)

    • La transacción puede ver cambios realizados por otras transacciones, incluso si aún no han sido confirmados.
    • Posibles "lecturas sucias" (dirty reads).
  2. Lectura Confirmada (Read Committed)

    • La transacción solo ve los cambios que han sido confirmados.
    • Elimina las lecturas sucias, pero pueden ocurrir lecturas no repetibles.
  3. Lectura Repetible (Repeatable Read)

    • Garantiza que si una transacción leyó datos, una lectura posterior de los mismos datos dará el mismo resultado.
    • Previene las lecturas no repetibles, pero pueden ocurrir lecturas fantasma.
  4. Serializable

    • El nivel más estricto, las transacciones se ejecutan como si fueran secuenciales.
    • Elimina las lecturas fantasma, garantiza la máxima integridad, pero reduce el paralelismo.

La elección del nivel de aislamiento es un equilibrio entre rendimiento e integridad de los datos.