Capítulo 30. Transacciones

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

30.0 Introducción

Las transacciones describen la capacidad de un sistema para soportar cambios tentativos o de varios pasos. Cuando realizas cambios en el contexto de una transacción, el sistema proporciona cuatro garantías principales:

Aislamiento

Para los observadores de que no participan en la transacción, los comandos dentro de la transacción no han impactado en el sistema.

Atomicidad

Una vez que decides finalizar(confirmar) una transacción, o bien todos los cambios surten efecto o no surte efecto ninguno.

Coherencia

Errores causados durante una transacción que provocarían un estado incoherente del sistema se tratan para devolver el sistema a un estado coherente.

Durabilidad

Una vez que el sistema te haya informado de que la transacción se ha completado con éxito, puedes estar seguro de que los cambios son permanentes.

Como ejemplo real de una transacción, considera una transferencia de dinero entre dos cuentas bancarias. Esto podría ocurrir en dos etapas: sustraer el dinero de la primera cuenta, y luego añadir el dinero a la segunda cuenta. En esta situación, tienes exactamente los mismos objetivos de robustez y corrección:

Aislamiento

Mientras se realiza la transferencia de dinero (pero aún no se ha completado), el saldo de ambas cuentas bancarias aparece sin cambios.

Atomicidad

En algún momento del proceso, es posible ...

Get Libro de cocina PowerShell, 4ª edición now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.