Exploración del procesamiento de datos transaccionales

Completado

Un sistema de procesamiento de datos transaccional es lo que la mayoría de los usuarios considera la función principal de la informática empresarial. Un sistema transaccional registra las transacciones que encapsulan eventos específicos que la organización desea realizar un seguimiento. Una transacción podría ser financiera, como el movimiento de dinero entre cuentas de un sistema bancario, o podría formar parte de un sistema minorista, realizar un seguimiento de los pagos de bienes y servicios de los clientes. Piense en una transacción como una unidad de trabajo pequeña y discreta.

Los sistemas transaccionales suelen ser de gran volumen; a veces, controlan muchos millones de transacciones en un solo día. Los datos que se procesan deben ser accesibles rápidamente. El trabajo que realizan los sistemas transaccionales a menudo se conoce como procesamiento de transacciones en línea (OLTP).

Diagrama que muestra un usuario leyendo y escribiendo datos en una base de datos.

Las soluciones OLTP se basan en un sistema de base de datos en el que el almacenamiento de datos está optimizado para operaciones de lectura y escritura para admitir cargas de trabajo transaccionales en las que se crean, recuperan, actualizan y eliminan los registros de datos (a menudo denominados operaciones CRUD ). Estas operaciones se aplican transaccionalmente, de una forma que garantiza la integridad de los datos almacenados en la base de datos.

Para que las siguientes propiedades resulten más tangibles, imagine una transferencia bancaria de $40 desde la cuenta A (saldo inicial: $100) a la cuenta B (saldo inicial: $50): el sistema debe debitar la cuenta A y acreditar la cuenta B como una sola operación fiable.

Diagrama que muestra una transacción.

Para ello, los sistemas OLTP aplican transacciones que admiten la denominada semántica ACID:

  • Atomicidad: cada transacción se trata como una sola unidad, que se realiza correctamente o falla por completo. Por ejemplo, una transacción que conlleve el adeudo de fondos de una cuenta y el abono de la misma cantidad en otra debe completar ambas acciones. Si alguna de las acciones no se puede completar, se debe producir un error en la otra.

Diagrama que explica el concepto de atomicidad.

  • Coherencia : las transacciones solo pueden tomar los datos de la base de datos de un estado válido a otro. Para continuar con el ejemplo anterior del adeudo y el abono, el estado completado de la transacción debe reflejar la transferencia de fondos de una cuenta a la otra.

Diagrama que explica el concepto de coherencia.

  • Aislamiento : las transacciones simultáneas no pueden interferir entre sí y deben dar lugar a un estado de base de datos coherente. Por ejemplo, mientras que la transacción para transferir fondos de una cuenta a otra está en proceso, otra transacción que comprueba el saldo de estas cuentas debe devolver resultados coherentes: la transacción de comprobación de saldo no puede recuperar un valor para una cuenta que refleje el saldo antes de la transferencia y un valor para la otra cuenta que refleje el saldo después de la transferencia.

Diagrama que explica el concepto de aislamiento.

  • Durabilidad : cuando se haya confirmado una transacción, permanecerá confirmada. Una vez completada la transacción de transferencia de cuenta, los saldos revisados de la cuenta se conservan para que incluso si el sistema de base de datos estuviera desactivado, la transacción confirmada se reflejará cuando se vuelva a activar.

Diagrama que explica el concepto de durabilidad.

Normalmente, los sistemas OLTP se usan para admitir aplicaciones activas que procesan datos empresariales, a menudo denominadas aplicaciones de línea de negocio (LOB).