Transacciones - Escenarios y ejemplos


ESCENARIOS DE PROCESOS TRANSACCIONALES

A la hora de construir procesos transaccionales debemos considerar diferentes escenarios. Nos referimos al gestor como el proceso controlador de la transacción y los procesos como módulos o rutinas que procesan una parte de la información.

Escenario
Descripción
Enfoque transaccional
Procesos de corta duración  en un sistema centralizado
Varios procesos de corta duración que persisten datos en un sistema centralizado. El gestor de base de datos y los procesos residen en el mismo sistema.
Transacción atómica. El gestor se encarga de ejecutar secuencialmente cada proceso y de verificar antes de la siguiente ejecución que todo ha terminado correctamente. El gestor se encarga de la persistencia de datos.
Procesos de corta y larga duración en un sistema distribuido
Varios procesos en un sistema distribuido que persisten datos. Algunos son de corta y otros de larga duración. Las bases de datos y los procesos pueden residir en diferentes sistemas.
Transacción de larga duración. El gestor ejecuta secuencialmente cada proceso. Cada proceso realiza su propia persistencia de datos informando al gestor si todo ha ido bien o mal. El  gestor se encarga de mantener el estado general del proceso y de ejecutar operaciones de compensación para todo el sistema si alguno de los procesos falla.
Transacciones atómicas en un sistema centralizado
Se ejecutan varias transacciones en un sistema centralizado  persistiendo sus datos. Las bases de datos y las transacciones residen en el mismo sistema.
Transacción atómica. Cada transacción informa al gestor si ha ido bien y mal. El gestor se encarga de mantener el estado general del proceso y de ejecutar operaciones de compensación para todo el sistema si alguna de las transacciones ha ido mal.
Transacciones atómicas en sistema distribuido
Se ejecutan varias transacciones en un sistema distribuido. Cada una de ellas persiste sus datos. Las bases de datos y las transacciones residen en sistemas diferentes.
Transacción atómica. Cada transacción informa al gestor si ha ido bien y mal. El gestor se encarga de mantener el estado general del proceso y de ejecutar operaciones de compensación para todo el sistema si alguna de las transacciones ha ido mal.
Transacciones atómicas y de larga duración en un sistema centralizado
Se ejecutan varias transacciones en un sistema centralizado persistiendo sus datos.  Algunas de ellas son atómicas y otras de larga duración. Las bases de datos y las transacciones residen en el mismo sistema. El tiempo de respuesta entre transacciones puede ser largo.
Transacción de larga duración. El gestor ejecuta secuencialmente cada proceso. Cada proceso realiza su propia persistencia de datos. El  gestor se encarga de mantener el estado general del proceso y de ejecutar operaciones de compensación para todo el sistema si alguno de los procesos falla.
Transacciones de larga duración en un sistema distribuido
Se ejecutan varias transacciones en un sistema distribuido persistiendo sus datos. Las bases de datos y las transacciones residen en diferentes sistemas. El tiempo de respuesta entre transacciones puede ser largo.
Transacción de larga duración. El gestor ejecuta secuencialmente cada transacción. Cada transacción  realiza su propia persistencia de datos informando al gestor si todo ha ido bien o mal. El  gestor se encarga de mantener el estado general del proceso y de ejecutar operaciones de compensación para todo el sistema si alguno de las transacciones falla.
Transacciones atómicas y de larga duración en un sistema distribuido
Se ejecutan varias transacciones en un sistema distribuido persistiendo sus datos. Las bases de datos y las transacciones residen en diferentes sistemas. El tiempo de respuesta entre transacciones puede ser largo.
Transacción de larga duración. El gestor ejecuta secuencialmente cada transacción. Cada transacción  realiza su propia persistencia de datos informando al gestor si todo ha ido bien o mal. El  gestor se encarga de mantener el estado general del proceso y de ejecutar operaciones de compensación para todo el sistema si alguno de las transacciones falla.

EJEMPLOS DE ESCENARIOS

Escenario
Ejemplos
Procesos de corta duración  en un sistema centralizado
Programa COBOL que llama a módulos que escriben en la base de datos DB2. Si todas las llamadas prosperan, el programa principal COBOL  realiza un COMMIT. En caso contrario, realiza un ROLLBACK de todos los datos y termina el proceso transaccional.
Procesos  de corta y larga duración en un sistema distribuido
Una aplicación BizTalk o MessageBroker incluye un Human Workflow y varias transacciones atómicas en una orquestación.
Transacciones atómicas en un sistema centralizado
Transacciones CICS que permiten que el frontal de negocio acceda a la capa de negocio y a los datos del backend.
Transacciones atómicas en sistema distribuido
Aplicaciones de escritorio o Web que actualizan bases de datos. La aplicación puede estar desplegada en un ordenador Windows mientras que la base de datos se ejecuta en un servidor AIX o zOS. Al realizar operaciones de actualización (UPDATE o INSERT) se realizan operaciones de persistencia de datos (COMMIT y ROLLBACK)
Transacciones atómicas y de larga duración en un sistema centralizado
Un proceso Batch típico. Cada paso de JCL se comporta como una transacción atómica persistiendo datos y estado e indicando al JCL si ha terminado correctamente o no. El JCL hace de proceso controlador, decidiendo que pasos hay que ejecutar y cuáles no y termina con cero si todo ha ido bien o con un código distinto de cero si ha habido algún error, o sea termina (cadena terminada) o no termina  (cadena “cascada”). Al mantenerse estado es posible relanzar el JCL en un paso específico. En dependencia del proceso Batch y del volumen de datos puede durar desde unos pocos segundos hasta horas en ejecución.
Transacciones de larga duración en un sistema distribuido
Orquestaciones de BizTalk que incluyen procesos de Workflow Foundation (WWF).
Transacciones atómicas y de larga duración en un sistema distribuido
Orquestaciones de BizTalk o Message Broker que incluyen consulta asincrónicas a servicios externos recibiendo los datos de respuesta en forma de mensajes en colas MQ.



posted under , |

0 comentarios:

Publicar un comentario

Entrada más reciente Entrada antigua Inicio