Tabla de contenido:
- Modelos de transacciones ACID y BASE
- Gerentes de transacciones
- Otras consideraciones con los sistemas de proceso de transacción
Las empresas de muchos tipos diferentes pueden invertir en un sistema de proceso de transacciones como parte de los servicios comerciales de TI u otras partes de la arquitectura de software. Sin embargo, como algunos de los otros términos sobre TI, esta etiqueta puede parecer un poco vaga. Esto se debe en parte a que, en esencia, el procesamiento de transacciones no es solo un término para transacciones financieras, aunque muchos sistemas TPS, como los de procesamiento de tarjetas de crédito, pueden girar en torno al proceso de cambio de dinero.
Esencialmente, el procesamiento de transacciones es un modelo para varias transacciones, incluidas las transacciones financieras y otros procesos como las verificaciones. Los expertos comparan el procesamiento de transacciones con un tipo diferente de modelo llamado procesamiento por lotes, donde un mayor número de transacciones individuales se manejan colectivamente. Ambos se pueden aplicar a los sistemas de comercio electrónico estándar que manejan transacciones financieras.
Cuando hablamos de procesamiento de transacciones, el término "transacción" se refiere a todo el proceso. Para tener éxito, el proceso debe completarse de principio a fin. El dinero tiene que salir de una cuenta y entrar en otra cuenta. Con otros tipos de transacciones no financieras, se deben actualizar diferentes partes de una arquitectura de software. De lo contrario, el sistema puede tener lo que se llama una "transacción perdida" (o lo que Microsoft llama "pérdida de integridad").
Lo contrario de una transacción descartada es lo que se llama una "transacción duradera". Estas transacciones duraderas son la base fundamental de muchas actividades en línea, como la reserva de entradas o eventos, el procesamiento de tarjetas de crédito y otros arreglos quid pro quo en los que se deben actualizar varios sistemas y un evento digital debe alinearse con otro. Entonces, ¿cómo ayuda el procesamiento de transacciones a garantizar este tipo de durabilidad? Vamos a ver.
Modelos de transacciones ACID y BASE
Con el tiempo, los especialistas en datos han producido varios modelos que promueven transacciones exitosas y duraderas. Uno de estos se llama atomicidad, consistencia, aislamiento y durabilidad, o ACID. Este sistema "duro" de verificación de transacciones condujo a otro modelo llamado básicamente disponible, estado blando, consistencia eventual o BASE, una alternativa más versátil. Ambos modelos pueden guiar a los profesionales de TI hacia sistemas de procesamiento de transacciones más consistentes. Para una idea simple de cómo funcionan estos dos métodos, imagine dos de esos viejos sistemas de marquesina analógicos en una estación de tren, donde las actualizaciones involucran varias piezas de barajado con información de horarios. Uno de ellos golpea furiosamente durante unos segundos, luego se cierra. El otro continúa, disminuyendo con el tiempo desde unos pocos golpes y tronos hasta un eventual silencio. El primer ejemplo se refiere a ACID, mientras que el segundo representa BASE. En ambos casos, el objetivo es el mismo: resolución total de datos. (Para obtener información básica sobre ACID, consulte nuestra Introducción a las bases de datos).Gerentes de transacciones
Otro elemento básico de los sistemas de proceso de transacciones es el administrador de transacciones. Este término es uno de los muchos términos basados en la personificación en TI moderna. No hace mucho tiempo que el término se refería a un individuo que tenía la tarea de completar las transacciones, generalmente financieras. En esos días, un cajero de banco podría haber sido llamado gerente de transacciones. Por el contrario, el término tal como se usa hoy se refiere en gran medida a un elemento intangible del sistema de procesamiento de transacciones en su conjunto, pero uno con un rol predefinido.
El uso de administradores de transacciones, aunque permite varios tipos de TPS, puede ser problemático. Por ejemplo, los desarrolladores que trabajan con J2EE o recursos similares pueden encontrarse perdidos cuando una llamada al administrador de transacciones devuelve varios errores. Todo tipo de declaraciones y variables tienen que ser correctas para llamar al administrador de transacciones de manera efectiva, y los foros de desarrolladores abundan en historias de este tipo de configuraciones que simplemente no eran del todo correctas.
Las guías de mejores prácticas específicas del idioma (como esta para J2EE) pueden proporcionar algunos consejos sobre la gestión de transacciones y otros métodos de soporte, como los marcos de desarrollo de aplicaciones. Otros recursos de transacción incluyen el Object Transaction Service (OTS), que fue producido por Object Management Group para tratar ciertas complejidades y procesos multiplataforma.
Microsoft también ha presentado algunos recursos más amplios; las versiones más nuevas del sistema operativo Windows se envían con Kernel Transaction Manager (KTM), que puede admitir aplicaciones C ++. Microsoft también ha ofrecido el Coordinador de transacciones distribuidas de Microsoft (DTC) desde 2000 para soporte de transacciones multiplataforma.
Otras consideraciones con los sistemas de proceso de transacción
En general, hay una variedad de objetivos clave que deben cumplirse para lograr configuraciones TPS efectivas. Los datos deben estar accesibles en estructuras de datos que funcionen bien y deben protegerse de varios tipos de fallas. Los sofisticados sistemas de respaldo ayudan a proporcionar salvaguardas contra ataques cibernéticos, desastres naturales u otros tipos de responsabilidades. Algunas de las herramientas mencionadas anteriormente se crearon para ayudar a lidiar con la corrupción de datos y otros problemas que podrían afectar la durabilidad de las transacciones.
Las transacciones duraderas significan que las actualizaciones multiplataforma también deben resolverse. Los modelos ACID y BASE son instructivos aquí. Gran parte del trabajo que realizan los profesionales modernos está relacionado con este tipo de coherencia y con el hecho de asegurarse de que una parte de un sistema de datos coincida con otra, todo con el fin de respaldar aquellos procesos clave que generalmente se denominan transacciones.
Obviamente, hay muchos elementos más detallados de los sistemas TPS y problemas y soluciones caso por caso para analizar, pero donde un grupo diverso de personas podría estar involucrado en abordarlos (por ejemplo, cuando una empresa tiene ciertos problemas con su proveedores de tecnología), tiene sentido ayudar a aclarar primero esta terminología clave de TI.