Transacción de base de datos


Una transacción de base de datos simboliza una unidad de trabajo realizada dentro de un sistema de gestión de base de datos (o un sistema similar) frente a una base de datos, y tratada de manera coherente y confiable independientemente de otras transacciones. Una transacción generalmente representa cualquier cambio en una base de datos. Las transacciones en un entorno de base de datos tienen dos propósitos principales:

En un sistema de administración de bases de datos, una transacción es una sola unidad de lógica o trabajo, a veces compuesta por múltiples operaciones. Cualquier cálculo lógico realizado en un modo consistente en una base de datos se conoce como transacción. Un ejemplo es una transferencia de una cuenta bancaria a otra: la transacción completa requiere restar el monto a transferir de una cuenta y agregar ese mismo monto a la otra.

Una transacción de base de datos, por definición, debe ser atómica (debe estar completa en su totalidad o no tener ningún efecto), consistente (debe ajustarse a las restricciones existentes en la base de datos), aislada (no debe afectar a otras transacciones) y duradera. (debe escribirse en el almacenamiento persistente). [1] Los profesionales de bases de datos a menudo se refieren a estas propiedades de las transacciones de bases de datos utilizando el acrónimo ACID .

Las bases de datos y otros almacenes de datos que tratan la integridad de los datos como primordial a menudo incluyen la capacidad de manejar transacciones para mantener la integridad de los datos. Una sola transacción consta de una o más unidades de trabajo independientes, cada una de las cuales lee y / o escribe información en una base de datos u otro almacén de datos. Cuando esto sucede, a menudo es importante asegurarse de que todo ese procesamiento deje la base de datos o el almacén de datos en un estado coherente.

Los ejemplos de los sistemas de contabilidad de partida doble a menudo ilustran el concepto de transacciones. En la contabilidad de partida doble, cada débito requiere el registro de un crédito asociado. Si uno escribe un cheque por $ 100 para comprar alimentos, un sistema de contabilidad transaccional de doble entrada debe registrar las siguientes dos entradas para cubrir la transacción única:

Un sistema transaccional haría que ambas entradas pasaran o ambas fallarían. Al tratar el registro de múltiples entradas como una unidad de trabajo transaccional atómica, el sistema mantiene la integridad de los datos registrados. En otras palabras, nadie termina con una situación en la que se registra un débito pero no se registra un crédito asociado, o viceversa.