<$BlogRSDUrl$>

quarta-feira, outubro 20, 2004

 
Flexible Update Propagation forWeakly Consistent Replication.
Petersen, K., Spreitzer, M.J., Terry, D.B., Theimer,
M.M., Demers, A.J. Proceedings of the Sixteenth
ACM Symposium on Operating System Principles
(SOSP), Saint-Malo, Franco, October 1997.

 
Designing and Implementing Asynchronous Collaborative Applications with Bayou

Introdução
Bayou é uma infrastrutura de suporte de aplicações distribuidas colaborativas, em ambientes de conectividade variada e armazenamento de fraca consistência. Permite ás aplicações a descrição da semantica de restrições de integridadde, dectecção de conflitos, procedimentos de resolução automáticos e politicas de propagação. Baseia-se na existência de diversos colaboradores, permitindo edição offline através de réplicas e posterior reconciliação. Permite a reconciliação entre qualquer par de réplicas.

Caracteristica da colaboração assincrona
Utilizadores não necessitam de ser notificados em tempo real das alterações realizadas por outros, trabalhando independentemente por periodos de tempo. Facilita a gestão do tempo e espaço de trabalho. Permite trabalhar em condições de fraca conectividade, ou mesmo na sua ausencia como por exemplo em aviões. A independência é talvez a caracteristica chave do trabalho assíncrono

Suportar colaboração assincrona
A replicação é um meio frequentemente usado para conseguir a independência do trabalho. Permite separar as ações dos utilizadores, aumentar o desempenho e tolerancia a falhas. Uma das formas mais fortes da independência é a abilidade de trabalhar completamente desconectado da rede e poder adicionar dados á sua própria replica. Este facto requer suporte de replicas de fraca consistencia. Os utilizadores devem poder controlar quando deve ocurrer a sincronização. Resolvedores de conflitos automáticos melhoram o sincronismo. Cada aplicação deve poder definir as politicas de resolução de conflitos.

Modelo
Bayou é composto por um conjunto de servidores, contendo cada um uma réplica dos dados. É usada uma base de dados relacional, podendo no entanto ser usados outros modelos de dados. Permite acesso a pequenas partes dos dados, util para detecção e resolução de conflitos. A garantia de consistencia é dada pela imposição de uma ordem global nas operações de escrita e garantia de propagação.

Mecanismos para a semântica da aplicação
Detecção e resolução de conflitos - separado em três componentes: verificação da dependência; instrução de update; protocolo de fusão.
Garantia de sessão
Diferenciação entre dados estaveis e tentativas.
Selecção da réplica a sincronizar.
Politicas de propagação, que permitem controlar quando é realizada a propagação.

nota: solução próxima da pretendida se entendermos que o utilizador pode tomar o papel de diferentes colaboradores dependendo da maquina utilizada.

segunda-feira, outubro 11, 2004

 
The IceCube approach to the reconciliation of divergent replicas

Baseada na utilização de log's de acções.
As acções são combinadas duas a duas, obtendo todas as restrições estáticas entre elas.
É realizado um reordenamento dessas acções por forma a evitar esses conflitos.

Conflitos estáticos - conflitos de ordem entre as acções (apagar registo -> alterar registo)
Conflitos dinamicos - conflitos de estado (1 <= dia <= 31)

Sheduling phase:
recebe como entrada os dois logs a reconciliar, verifica as relações entre as acções e reordena os logs.

Simulation phase:
simula a reordenação feita anteriormente obtendo um resultado. Estas duas fases são realizadas diversas vezes gerando vários estados possiveis.

Selection phase:
selectionar um dos estados gerados, por exemplo utilizando uma função de custo.



This page is powered by Blogger. Isn't yours?