Um Esquema de Replicação para Suportar Conectividade Fraca em Sistemas de Informação Móveis * Gustavo Fortes Tondello PPGCC – UFSC – 2005 * Original: A Replication Schema to Support Weak Connectivity in Mobile Information Systems (Evaggelia Pitoura) Apresentação Introdução Esquema de Replicação Implementação Performance Conclusão Computação Móvel Desconexões freqüentes – – – Conectividade fraca – – Falhas Previstas Modos de operação: conectado e desconectado Baixa largura de banda Erros freqüentes Variação de largura de banda Computação Móvel Modelo de Consistência Fraca Cluster – – Consistência entre Clusters é fraca – Conjunto de dados fortemente conectado Consistência dentro do Cluster é mantida Um mesmo dado em Clusters diferentes pode estar inconsistente, dentro de um limite préestabelecido (d-grau) Base de dados d-consistente Modelo de Consistência Fraca Transações Operações – – – – Strict Read (SR) Strict Write (SW) Weak Read (WR) Weak Write (WW) Transações – – Weak Transaction (WT): commit local Strict Transaction (ST): commit global Transações Cópias de dados – – Core: dados atualizados e permanentes (ST) Quasi: dados comitados condicionalmente (WT) Função de tradução H – Mapeia operações de leitura e escrita para os dados core ou quasi correspondentes Reconciliação Atualização dos dados core e quasi – – – Utiliza grafos para representar a ordem de execução das transações O grafo determina qual é a cópia core ou quasi que deve ser mantida como a mais atual Ao final da Reconciliação, os dados devem ser idênticos em todas as cópias Protocolos Serialização: bloqueio em duas fases Protocolos Manutenção do grau – – – Dependendo da condição que define o d-grau, deve ser planejado o mecanismo de garantia deste grau Ex.: definir reconciliação periódica, limitar o número máximo de transações a executar antes de reconciliar Dependendo da definição do d-grau, pode ser impossível esta garantia em um dispositivo desconectado Protocolos Reconciliação – – – Implementada através da construção de grafo de ordem das transações e eliminação de ciclos neste grafo Pode ser necessário abortar transações com operações Weak Write (WW). Pode ocorrer rollback em cascata Apenas transações exatas precisam ser abortadas – as demais podem contentar-se em ler um dado d-consistente Exemplo CORE ST QUASI QUASI WT WT CORE ST Performance Taxa máxima de operações de consulta x Fator de consistência Performance Taxa máxima de operações de atualização x Fator de consistência Performance Tempo de Resposta ST WT Conclusão Esquema de replicação para sistemas de informação móveis – – – – Extensão da interface de banco de dados com operações Weak Read e Weak Write Operação mesmo quando desconectado Economia de largura de banda pode ser conseguida trocando de ST para WT Nível de consistência pode ser ajustado para obter a performance desejada Application-aware adaptation