P. 1
SISTEMAS DISTRIBUIDOS-TRANSACCIONES

SISTEMAS DISTRIBUIDOS-TRANSACCIONES

|Views: 1.251|Likes:
Publicado porLeon King

More info:

Published by: Leon King on Jul 28, 2011
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

06/19/2013

pdf

text

original

2.1 PROCESAMIENTO DE TRANSACCIONES EN SISTEMAS DISTRIBUIDOS Motivos del uso de transacciones.

Los sistemas distribuidos son potencialmente muy fiables debido a la posibilidad de proveer redundancia y autonomía de recursos en diferentes nodos, esto permite detectar y localizar fallas, sin embargo comúnmente tenemos varios aspectos que representan problemas para la integridad de los recursos y que a su vez motivan el uso de transacciones: 1. Dificultad para mantener consistencia en los datos. 2. Una misma vía de comunicación no siempre puede ser utilizada para proveer interacción entre 2 procesos. 3. Requerimientos de procesamiento en paralelo. 4. Manejo interactivo de uno o más usuarios Definición de transacciones. Las transacciones fueron originalmente desarrolladas para ser utilizadas dentro de los sistemas de base de datos, donde se usaba para auxiliar en el mantenimiento de los datos de las aplicaciones y que dependían de la consistencia de la información almacenada. Las transacciones son un mecanismo que ayuda a simplificar la construcción de sistemas confiables a través de procesos que proveen soporte uniforme para invocar y sincronizar operaciones como:
y y y y y

Operaciones de compartición de datos. Aseguramiento de la seriabilidad de las transacciones con otras. Atomicidad en su comportamiento. Recuperación de fallas provocadas en red y nodos.

El término transacción describe una secuencia de operaciones con uno o más recursos (por ejemplo una base de datos) que transforman su estado actual en un nuevo estado de consistencia.

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 (Begin Tran) y un punto de terminación que define un bloque entre el conjunto de operaciones que son realizadas . Durabilidad: Una vez iniciada una transacción y terminada completamente no puede ser abortada. esto ocasiona inconsistencia temporal y conflictos. Es un sistema que permite el proceso de transacciones asignándole tiempos de procesamiento el cual permite incrementar el rendimiento del sistema ya que se ejecuta un máximo de proceso en forma concurrente y no a través de una serie. 2.2 TEORÍA DE TRANSACCIONES ANIDADAS. 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. este proceso reduce el rendimiento del sistema. Atomicidad: Debe ocurrir completo o abortar.El manejo de transacciones fue desarrollado en el campo de las operaciones financieras donde se tenía 3 reglas básicas: Consistencia: Obedecer ciertas reglas. Dentro del área de los sistemas computacionales el concepto de transacciones fue inicialmente utilizado para definir la consistencia entre múltiples usuarios de una base de datos. Ejecutar transacciones calendarizadas. . Es un sistema que permite el procesamiento de transacciones en forma secuencial o serializado y consiste en asignarle una secuencia a cada transacción. Para evitar lo anterior se implementan dos maneras diferentes: Ejecutar transacciones serializadas.

La transacción de nivel superior puede producir hijos (Subtransacciones) que hagan más fácil la programación del sistema y mejorando el desempeño.Propiedades de las transacciones. Ejecutar transacciones anidadas. Consiste en efectuar todas las transacciones. una transacción Seriabilidad. Consiste en especificar un bloque inicial y un punto que termina el fin de ese bloque. las cuales deben ser proporcionadas por el sistema operativo. Consiste en asegurarse que los cambios siguen un orden adecuado. Aborto de transacciones propio para cada transacción. Permanencia. Instrucciones para el uso de transacciones. Es la capacidad que se tiene para abortar el proceso transaccional en cualquier punto. Punto de inicio y terminación. por el compilador del lenguaje o por el manejador de la base de datos. Atomicidad de fallas. pero en caso de falla no se realiza ninguna. el resultado de esta operación no puede ser revelado para otras transacciones. Algunos ejemplos son: BEGIN_TRANSACTION END_TRANSACTION ABORT_TRANSACTION READ WRITE . estas transacciones están incluidas dentro de otra de un nivel superior y se les conoce como: SubTransacciones. La programación con uso transacciones requiere de instrucciones especiales. Consiste en tener transacciones que dependen de otras. Consiste en que una vez completada satisfactoriamente los cambios ya no pueden perderse.

Para llevar a cabo el control de concurrencia dentro de un proceso de transacciones se manejan 2 modos: Ejecución centralizada de transacciones.La cantidad exacta de instrucciones disponibles para manejar transacciones depende del tipo de objetos y operaciones que deban ser procesadas. Consistencia intratransacción (aislamiento). ese control de concurrencia tiene 2 objetivos: 1. El control de las transacciones también requiere de controlar la concurrencia del acceso y uso hacia el recurso que se esta manipulando. Protocolos de compromiso global. . 2. Procesamiento de transacciones. Protocolos de recuperación total. Como sincronizar la ejecución concurrente de transacciones. estas pueden ser planas (simples) o anidadas. Un aspecto muy importante en el manejo de transacciones es el mantener y aplicar algoritmos de control sobre los datos o recursos. para ese control también se utilizan protocolos que proporcionan confiabilidad como los siguientes: y y y Atomicidad. La estructura de una transacción usualmente se le da el nombre de modelo de la transacción.

Consiste en realizar copias de los bloques que serán utilizados dentro de una transacción de manera que se trabaje con estas copias para realizar todas las modificaciones necesarias. Todo el espacio de trabajo con la información que será utilizada es contenido dentro de estas copias denominado espacio de trabajo privado. Métodos de implantación de transacciones. Los demás usuarios trabajarán con la copia original de los bloques pero no podrán obtener segunda copia de los mismos. .Ejecución distribuida de transacciones. Espacio de trabajo privado.

Aseguramiento de la seriabilidad de las transacciones con otras. El término transacción describe una secuencia de operaciones con uno o más recursos (por ejemplo una base de datos) que transforman su estado actual en un nuevo estado de consistencia. Consistencia: Obedecer ciertas reglas. 2. 3.RESUMEN Las transacciones son un mecanismo que ayuda a simplificar la construcción de sistemas confiables a través de procesos que proveen soporte uniforme para invocar y sincronizar operaciones como: y y y y Operaciones de compartición de datos. 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. Atomicidad: Debe ocurrir completo o abortar. Atomicidad en su comportamiento. esto ocasiona inconsistencia temporal y conflictos . El manejo de transacciones fue desarrollado en el campo de las operaciones financieras donde se tenía 3 reglas básicas: 1. Recuperación de fallas provocadas en red y nodos. La teoría de las transacciones 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 (Begin Tran) y un punto de terminación que define un bloque entre el conjunto de operaciones que son realizadas. Durabilidad: Una vez iniciada una transacción y terminada completamente no puede ser abortada.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->