ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

PROCESAMIENTO DE TRANSACCIONES EN SISTEMAS DISTRIBUIDOS


Enviado por   •  31 de Marzo de 2013  •  1.344 Palabras (6 Páginas)  •  1.268 Visitas

Página 1 de 6

PROCESAMIENTO DE TRANSACCIONES EN SISTEMAS DISTRIBUIDOS

Los sistemas distribuidos son muy confiables debido a la posibilidad de brindar redundancia y autonomía de recursos en diferentes nodos, esto posibilita detectar y localizar fallas, sin embargo tenemos varios aspectos que representan problemas para la integridad de los recursos y que a su vez motivan el uso de transacciones.

Transacciones:

Fueron originalmente desarrolladas para ser utilizadas dentro de los sistemas de base de datos, donde se usaba para ayudar en el mantenimiento de los datos de las aplicaciones y que dependían de la consistencia de la información almacenada.

Las transacciones son mecanismos que ayudan a simplificar la construcción de sistemas confiables mediante procesos que proporcionan soporte uniforme para invocar y sincronizar operaciones como:

* Operaciones de comparación de datos

* Aseguramiento de la seriabilidad de las transacciones con otras

* Atomicidad en su comportamiento

* Recuperación de fallas

Una transacción es una colección de operaciones que hacen transformaciones consistentes de los estados de un sistema conservando la consistencia del sistema. Una base de datos está en estado consistente si cumple todas las restricciones de integridad definidas sobre ella. Los cambios de estado se dan debido a actualización, inserción y eliminación de la información.

Lo importante aquí es asegurar que la base de datos vuelva aun estado consistente al concluir la ejecución de una transacción (Figura A).

Figura A . Un modelo de transacción.

Algunos aspectos más importantes con el procesamiento de transacciones:

*MODELO DE ESTRUCTURA DE TRANSACCIONES

Es importante considerar si las transacciones son planas o anidadas.

*CONSISTENCIA DE LA BASE DE DATOS INTERNA

Los algoritmos de control de datos tienen que satisfacer las restricciones de integridad cuando una transacción pretende hacer un compromiso.

*PROTOCOLOS DE CONFIABILIDAD

En transacciones distribuidas es necesario introducir medios de comunicación entre los diferentes nodos de una red para garantizar la atomicidad de las transacciones.

*ALGORITMOS DE CONTROL DE CONCURRENCIA

Deben sincronizar la ejecución de transacciones concurrentes bajo el criterio de correctitud. La consistencia entre transacciones se garantiza mediante el aislamiento de las mismas.

*PROTOCOLOS DE CONTROL DE REPLICAS

Se refiere a cómo garantizar la consistencia mutua de datos replicados. El procesamiento de transacciones básicamente consiste en una serie de modificaciones (transacciones) a un determinado recurso del sistema (por ejemplo una base de datos) y en donde se define un punto de inicio y un punto de terminación que define un bloque entre el conjunto de operaciones que son realizadas.

Dentro de este proceso en bloque los demás usuarios no pueden modificar nada hasta que no se presente un estado estable de los datos, esto ocasiona inconsistencia temporal y conflictos. Para evitar lo anterior se implementan dos maneras diferentes:

1- EJECUTAR TRANSACCIONES SERIALIZADAS: Es un sistema que permite el procesamiento de transacciones en forma secuencial o serializado dándole una secuencia a cada transacción, este proceso reduce el rendimiento del sistema, pero tiene como ventaja que el proceso de sincronización es más sencillo.

2- EJECUTAR TRANSACCIONES CALENDARIZADAS: Permite el proceso de transacciones asignándoles tiempos de procesamiento el cual permite incrementar el rendimiento del sistema ya que se ejecuta un máximo de procesos en forma concurrente y no a través de una serie. La ventaja es que a un mismo tiempo de reloj se pueden hacer dos operaciones, aunque el proceso de sincronización es más complicado.

Un aspecto muy importante en el manejo de transacciones es el de mantener y aplicar algoritmos de control sobre los datos o recursos; para ese control también se utilizan protocolos que proporcionen confiabilidad como lo siguientes:

1- Atomicidad

2- Protocolos de recuperación total

3- Protocolos de compromiso global

El control de las transacciones también requiere de controlar la concurrencia del acceso y uso hacia el recurso que se está manipulando, ese control de concurrencia tiene dos objetivos:

*Como sincronizar la ejecución concurrente de transacciones

*Consistencia intra transacción (Aislamiento)

Para llevar a cabo el control de concurrencia dentro de un proceso de transacciones se manejan dos modos:

Ejecución centralizada de transacciones (Figura B)

Ejecución

...

Descargar como (para miembros actualizados)  txt (8.7 Kb)  
Leer 5 páginas más »
Disponible sólo en Clubensayos.com