Transacciones Con Datos Replicados

18
Transacciones con datos replicados Alvarado, Yoselie Sosa Toranzo, Cecilia

description

Informatica-Sistemas Distribuidos

Transcript of Transacciones Con Datos Replicados

Page 1: Transacciones Con Datos Replicados

Transacciones con datos replicados

Alvarado, YoselieSosa Toranzo, Cecilia

Page 2: Transacciones Con Datos Replicados

Introducción• ¿Porque replicar objetos en SS.DD.?

Para lograr servicios con buena performance, alta disponibilidad y tolerancia a fallas.

• ¿Cómo deberían ser las transacciones sobre objetos replicados desde el punto de vista del cliente?

El efecto de las transacciones ejecutadas debería ser el mismo que si hubieran sido ejecutadas una a la vez sobre un conjunto simple de objetos. Serialización One-copy.

Page 3: Transacciones Con Datos Replicados

Introducción

Cada administrador de réplica provee control de concurrencia y recuperación de sus propios objetos.

Cliente

Administradores de réplica

Front end

Objetos

Transacción

Respuesta

Servicios

Page 4: Transacciones Con Datos Replicados

Aspectos a tratar:

• Arquitecturas para transacciones con datos replicados.

• Replicación con copias disponibles.

• Partición de red

• Copias disponibles con validación

• Consenso con quorum

• Partición virtual

Page 5: Transacciones Con Datos Replicados

Arquitecturas para transacciones replicadas

• ¿A quién/es son enviados los requerimientos del cliente?

• ¿Cuántos administradores son requeridos para la finalización exitosa de una operación?

• ¿Cuánto deben ser diferidos los requerimientos de actualización enviados por algún administrador?

Enfoque Perezoso Vs Enfoque Anticipado

Page 6: Transacciones Con Datos Replicados

Arquitecturas para transacciones replicadas

• Protocolo Commit de dos fases1era fase: el cordinador envía el canCommit? a los trabajadores, que lo pasan a los otros administradores de réplicas y recojen sus réplicas antes de responder al cordinador.2da fase: el cordinador envía el requerimiento doCommit o doAbort, el cual es pasado a los miembros del grupo del administrador de réplica.

• Replicación de copia primariaTodos los requerimientos del cliente son dirigidos a un administrador de réplica primario simple.

• Read one/Write all.Todas las operaciones Read son efectuadas por un administrador de replicas simple y las operaciones Write son efectuadas por todos ellos.

Page 7: Transacciones Con Datos Replicados

Replicación de copias disponibles

• Esta diseñado para permitir que algunos administradores esten temporalmente no disponibles.

• Un requerimiento Read sobre un objeto lógico puede ser ejecutado por cualquier administrador de réplica disponible pero un requerimiento de actualización (Write) debe ser ejecutado por todos los administradores de réplica disponibles en el grupo con copia del objeto.

Page 8: Transacciones Con Datos Replicados

Replicación de copias disponibles

A A B

B

B

X Y

M

P N

UT

Administradores de réplica Administradores de réplica

getBalance(B)deposit(A,3)

getBalance(A)deposit(B,3)

Page 9: Transacciones Con Datos Replicados

Replicación de copias disponibles

A A B

B

B

X Y

M

P N

UT

Administradores de réplica Administradores de réplica

getBalance(B)deposit(A,3)

getBalance(A)deposit(B,3)

NO ONE-COPY SERIALIZABILITY

Page 10: Transacciones Con Datos Replicados

Replicación de copias disponibles

A A B

B

B

X Y

M

P N

UT

Administradores de réplica Administradores de réplica

getBalance(B)deposit(A,3)

getBalance(A)deposit(B,3)

commit

falla

Page 11: Transacciones Con Datos Replicados

Particiones de red

• Copias disponibles con validación

• Consenso con quorum

• Partición virtual

Una partición de red separa un grupo de administradores de réplica en dos o mas subgrupos de manera que los miembros de un subgrupo puedan comunicarse entre sí pero los miembros de diferentes subgrupos no puedan comunicarse entre sí.

Esquemas:

Page 12: Transacciones Con Datos Replicados

Copias disponibles con validación

• Es aplicada en cada partición y cuando una partición es reparada, un procedimiento de validación es aplicado y cualquier inconsistencia es tratada.

• La validación puede realizarse a través del método optimista o la versión de vectores.

• Los grafos de precedencia son utilizados para detectar inconsistencias entre particiones.

Page 13: Transacciones Con Datos Replicados

Métodos de Consenso de Quorum• Un quorum es un subgrupo de

administradores de réplicas cuyo tamaño es el correcto para realizar operaciones.

• En el esquema de replicación de consenso de quorum una operación de actualización sobre un objeto lógico debe ser finalizada exitosamente por un subgrupo de su grupo de administradores de réplica.

• Se utilizan números de versión o marcas de tiempo para saber cual es la copia actual y cuales estan desactualizadas.

Page 14: Transacciones Con Datos Replicados

Métodos de Consenso de Quorum

Esquema

de

replicación

de Gifford

• Un número de votos es asignado a cada copia física en un administrador de réplica de un archivo lógico simple.• Cada operación Read debe primero obtener un quorum de lectura de R votos antes de poder proceder a leer de cualquier copia actualizada.•Cada operación Write debe obtener un quorum de escritura de W votos antes de poder proceder con una operación de actualización.•R y W para un grupo de administradores de réplica son seteados de manera que:

•W > a la mitad de los votos totales•R + W > al total de votos para el grupo

Page 15: Transacciones Con Datos Replicados

Método de Consenso de Quorum

Page 16: Transacciones Con Datos Replicados

Algoritmo de Partición virtual•Una partición virtual es una abstracción de una partición real y contiene un conjunto de administradores de réplica.

•Una transacción puede operar en una partición virtual si esta contiene los suficientes administradores de réplicas para tener quorum de Lectura y quorum de Escritura para los objetos accedidos. En este caso, la transacción usa el algoritmo de copias disponibles.

•Si un administrador de réplica falla y la partición virtual cambia durante una transacción, entonces la transacción es abortada.

Page 17: Transacciones Con Datos Replicados

Algoritmo de Partición virtual

Transacción T Partición de red

Administradores de réplica

Partición virtual Partición de red

Administradores de réplica

X V Y Z

X V ZY

Page 18: Transacciones Con Datos Replicados

¡¡Gracias por su atención !!