Professional Documents
Culture Documents
Presentado por:
Isaac Tisnado
Juan pablo cuevas
Orlando de la rosa
Elias Herrera
Juan torres
INTRODUCCIN
Es el proceso de copiar y mantener objetos de la base de
datos, como por ejemplo sus relaciones en mltiples bases de
datos
Tambin es una tcnica que mejora el rendimiento de los
servicios, esta mejora se obtiene aumentando la disponibilidad
y creando servicios tolerantes a fallos.
Beneficios -
Disponibilidad
Fiabilidad
Rendimiento
Reduccin de la carga
Generacin de bloqueos
Soporte mltiples usuarios
Formas de replicar - Por consola o por panel administrativo
Replicacin
INTRODUCCIN
RPLICAS
Diversos elementos de un sistema distribuido pueden fallar :
o Procesadores, red, dispositivos, software, etc.
Tipos de Fallos:
Transitorios
Intermitentes
Permanentes
Semntica de fallos :
fail-stop
bizantina: funcionamiento arbitrario y/o malicioso
Soluciones Basadas generalmente en replicacin
Disponer de copias de datos, servicios o recursos
Objetivos
o Mejorar el rendimiento
o Mejorar la disponibilidad
o Tolerancia a fallos
Requisitos
o Transparencia
o Coherencia
o Rendimiento
El elemento a replicar se suele denominar objeto.
Un objeto est compuesto por una serie de copias fsicas denominadas
rplicas.
intercaladas:
realizadas.
Servicios Tolerantes a Fallos
Criterio de Correccin Consistencia
Secuencial
Un servicio es consistente secuencialmente si para alguna de las posibles secuencias
de operaciones intercaladas:
realizadas .
Servicios Tolerantes a Fallos
Replicacin Pasiva (Primario-Respaldo)
El gestor de rplicas primario ejecuta las operaciones y enva copias de los datos
Primario
C F GR GR
Respaldo
C F
GR
Respaldo
Servicios Tolerantes a Fallos :: Replicacin Pasivo
Secuencia de eventos
Peticin: el frontal lanza la peticin, que contiene un identificador nico, al gestor de
rplicas primario.
C F GR GR
Respaldo
C F
GR
Respaldo
Servicios Tolerantes a Fallos :: Replicacin Pasivo
Secuencia de eventos
Ejecucin: el primario ejecuta la peticin y guarda la respuesta.
Respaldo
Servicios Tolerantes a Fallos :: Replicacin Pasivo
Anlisis
No tolera fallos bizantinos
GR
C F GR F C
GR
Servicios Tolerantes a Fallos :: Replicacin Activa
Secuencia de eventos
Peticin: el frontal adjunta un identificador nico a la peticin y la multidifunde. Se
asume que en el peor de los casos, el frontal falle por cada. Adems no emitir la
siguiente peticin hasta que haya recibido una respuesta.
GR
C F GR F C
GR
Servicios Tolerantes a Fallos :: Replicacin Activa
Secuencia de eventos
Ejecucin: Cada gestor de rplica ejecuta la peticin. Puesto que son mquinas de
estado, y las peticiones se entregan en el mismo orden total, todos los gestores de
rplicas correctos procesan idnticamente la peticin.
GR
C F GR F C
GR
Servicios Tolerantes a Fallos :: Replicacin Activa
Secuencia de eventos
Respuesta: cada gestor de rplicas enva su respuesta al frontal. El nmero de respuestas
que recoge el frontal depende de las suposiciones de fallo y del algoritmo de multidifusin.
GR
C F GR F C
GR
Servicios Tolerantes a Fallos :: Replicacin Activa
Anlisis
La multidifusin fiable y totalmente ordenada es la que aporta la tolerancia
a fallos
Pasiva Activa
Peticin Se enva slo al gestor primario. Multidifusin con ordenacin total a todos.
El Sistema BAYOU
GR
Cotilleo
GR GR
2
1 x 3
1 2
Propagacin de las Actualizaciones
La Arquitectura CODA
VICE = Gestor de Rplica (En los servidores).
Venus = Hbrido entre GR y Frontales. (Computadores
de Clientes).
VSG = Grupo de Almacenamiento del Volumen
(Conjunto de Servidores).
AVSG = Grupo Disponible de Almacenamiento del
Volumen (Subconjunto de VSG).
Un principio del diseo de CODA es que las copias de
los archivos que residan en los servidores sean ms
fiables que aquellas que residan en la memoria cach
de los computadores de los clientes.
Sistema de Archivos CODA Disponibilidad constante de datos
En open si no hay una copia del archivo en la cach local el cliente identifica,
para ese archivo, un servidor preferido dentro del AVSG. Dicho servidor puede
elegirse de forma aleatoria o basndose en criterios de rendimiento tales como la
proximidad fsica o la carga del servidor.
El cliente solicita al servidor preferido una copia de los atributos y el contenido del
archivo, y cuando los recibe, contacta con el resto de los miembro del AVSG para
verificar que dicha copia es la ltima versin disponible. Si no es as, uno de los
miembro de del AVSG con la ltima versin pasa a ser el sitio preferido.
Transacciones Con Datos Replicados
Transacciones Con Datos Replicados
En un sistema sin replicacin, las transacciones parecen que se realizan, una de cada vez,
siguiendo algn orden. Esto se consigue asegurando un entrelazado secuencial, equivalente
al de las transacciones de los clientes.
El efecto de las transacciones realizadas por los clientes sobre objetos replicados, deber
ser el mismo que si se hubiese realizado una por una, sobre un nico conjunto de objetos. A
esto se le denomina secuenciabilidad de una copia.
Metodologas de replicaciones:
Dentro de la primera fase el coordinador enva el mensaje Puede Consumar? a los trabajadores
que lo pasan a los gestores y esperan la respuesta antes de responder al coordinador.
Para la segunda fase el coordinador enva la solicitud Consuma o aborta, que se pasa los
miembros de los grupos de los gestores de rplicas.
Arquitectura para Transacciones
Replicadas
Fallo de un gestor
Est entendido de rplicas.
que los gestores de rplicas sufren grandes daos por cada cada. Sin
embargo cada vez que esto sucede, el gestor de rplica es reemplazado por un nuevo
proceso, que recupera el estado consumando de los objetos desde un archivo de
recuperacin. Los frontales utilizan timeouts para determinar si el gestor de rplica est
disponible.
La secuencialidad de una copia requiere que las cadas y recuperacin sean secuenciadas
con respecto a las transacciones. Una transaccin observa que ha ocurrido un fallo una
vez que haya finalizado o antes que comience, en funcin de si puede acceder al objeto o
no.
Variacin
Asegura que local.
no ocurra ningn evento asociado a un fallo o a una recuperacin durante el
desarrollo de una transaccin. Antes que se consuma una transaccin se comprueba cualquier
fallo y recuperacin en los gestores de rplica de los objetos que se ha accedido. Este mtodo
puede combinarse con el protocolo de consumacin en dos fases.
Los algoritmos para copias disponibles no pueden utilizarse en entornos, en los cuales los
gestores de rplicas que estn operando son incapaces de comunicarse entre ellos.
X falla -> U lee el objeto B en N; U escribe en el objeto A en Y-> se Consuma U -> N falla.
Particiones En La Red
Una particin en la red separa un grupo de gestores de rplicas en dos o ms subgrupos, de
tal forma que los miembros de cada subgrupo pueden comunicarse entre ellos, pero los
miembros de distintos grupos no pueden comunicarse.
Estos esquemas estn diseados bajo la suposicin de que las particiones sern reparadas,
por tanto no har inconsistencias al conjunto de rplicas cuando se repare la particin.
Copias Disponibles Con Validacin
El algoritmo de copias disponibles se aplica a cada particin manteniendo alta disponibilidad
para las operaciones lee. Cuando las particiones son reparadas, se valida que las
transacciones que puedan estar en conflicto y que tuvieron lugar dentro de las particiones
separadas. Si falla la validacin, deben darse algunos pasos para salvar las inconsistencias.
Si no hubiese habido particin, se retrasara o abortara una de las transacciones de las que
hayan entrado en conflicto.
Se pueden utilizar vectores de versiones para validar conflictos entre pares de operaciones
escribe. Esto son muy utilizados en sistemas de archivos donde los conflictos de lectura
escritura no son importantes.
Mtodos De Consenso Con Qurum
Un qurum es un subgrupo de rplicas que est autorizado a efectuar las operaciones, por
ejemplo en una operacin de actualizacin de un objeto lgico, podra ser completada con
xito por un subgrupo de su grupo de gestores de rplicas. Por tanto, los otros miembros del
grupo tendrn copias desfasadas del objeto. Los nmeros de versin o las marcas
temporales se podran usar para determinar si las copias estn actualizadas.
Si se usan versiones, las operaciones deberan aplicarse slo a aquellas copias que tengan
el nmero de versin actual.
La principal desventaja del consenso con qurum es que el rendimiento de las operaciones
lee se reduce a la necesidad de recoger un qurum de lectura.
Replicacin MultiMaestra
Es donde se habilitan los datos para ser distribuidos en un
grupo de computadoras, y actualizado por cualquier
miembro del grupo.
Es donde un miembro del grupo est asignado como el
"maestro" para tomas las piezas de datos y es el nico del
nodo habilitado a modificarlos.
Otros miembros solo pueden modificar los datos
comunicndose con el maestro del nodo.
Desventajas
Muchos sistemas de replicacin multimaestra son pobremente
consistentes. Ej: retardo y asincrona, violacin de propiedades ACID
Varios de los sistemas de replicacin son muy complejos y producen
latencia en la comunicacin
Problemas como resolucin de conflictos puede volverse difcil en tanto
incrementa el nmero de nodos lo cual aumenta las latencias
Ventajas
Si un maestro falla, otros maestros continuarn actualizando la base de
datos