A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Data Replication and Resiliency Trabalho realizado por: Rui Ferreira Nº 15039 Eng. Informática.

Apresentações semelhantes


Apresentação em tema: "Data Replication and Resiliency Trabalho realizado por: Rui Ferreira Nº 15039 Eng. Informática."— Transcrição da apresentação:

1 Data Replication and Resiliency Trabalho realizado por: Rui Ferreira Nº 15039 Eng. Informática

2 Aspectos Gerais  Acções atómicas em sistemas distribuídos  Replicação de dados  Estratégias de gestão de replicas  Aproximação Optimista  Versão de Vectores  Aproximação Pessimista  Local Primary  Replicação Activa  Votação

3 Acções Atómicas em Sistemas Distribuídos  Uma acção é uma operação lógica que acede ou modifica objectos de dados.  Objectivo de uma acção atómica:  Assegurar que ou as acções são completadas com sucesso ou não são executadas de todo  O estado de acções parcialmente executadas nunca devem ser visíveis, mesmo em caso da ocorrência de falhas  Queremos que as acções sejam sobreviventes (resilient) a falhas.

4 Replicação de Dados  Objectivo da replicação: suportar tolerância a falhas (replicações não devem ser visíveis)  Operações nos dados lógicos são mapeados para as várias cópias dos dados.  Deve assegurar o critério de one-copy serializable  Isto será garantido através dos algoritmos de controlo de replica  Todas as cópias do mesmo dado lógico devem estar no mesmo estado mútuo de estado de consistência  Os algoritmos de controlo de replica são também denominados por algoritmos de controlo de consistência.

5 Replicação de Dados  Tipos de avarias que têm de ser controladas pelos algoritmos de controlo de replica num sistema distribuído:  Avarias nos nós  Avarias de comunicação  Como as avarias em nós afectam o comportamento do sistema?  enquanto uma cópia do dado permanecer acessível a operação pode ser terminada  Ao que leva no caso de ocorrerem avarias na comunicação?  Partição da rede: os nós restantes são particionados em grupos, onde só podem comunicar com os nós do mesmo grupo.  Num grupo a consistência das replicas pode ser preservado  O critério de one-copy serializable pode ser violado

6 Métodos de controlo de replica  Para evitar esta violação é necessário que sejam impostas restrições no processamento nas diferentes partições.  Os métodos de controlo de replica podem ser:  Optimistas: sem restrições, resolve as inconsistências depois de voltar ao estado normal  Pessimistas: restrições no processamento

7 Abordagem Optimista  Durante uma partição de rede, se operações são executadas independentemente, as cópias dos dados nas diferentes partições podem ficar inconsistentes  Quando as partições se reúnem,tais inconsistências têm de ser detectadas e resolvidas, se possível  Uma aproximação usada para detectar tais inconsistências é a versão de vectores (version vectors)  Version Vectors  Ficheiros são tratados como os objectos de dados básicos e são a unidade de replicação

8 Abordagem Optimista  Um ficheiro f pode ter várias cópias, todas em nós diferentes  Quando é actualizado o ficheiro f, todas as cópias acessíveis a partir do nó que fez o pedido são actualizadas  Cada cópia de um ficheiro tem um vector versão associado com tamanho n, onde n é o numero de locais onde o ficheiro foi guardado  O vector versão de uma cópia do ficheiro representa o nº de actualizações originadas em diferentes nós que foram executadas nesta cópia

9 Abordagem Optimista  Relação entre dois vectores:  Dominante: V[i] > V[i]‘, para todo i = 1..n • Os estados das duas cópias não são iguais (inconsistência)  Conflito: nenhum vector domina o outro • Isto representa que as cópias sofreram diferentes actualizações  Soluções:  Se um Vector é dominante em relação a outro vector, a inconsistência pode ser resolvida copiando o ficheiro com a versão V para o vector V’  Se duas cópias entram em conflito, cabe ao gestor do sistema fazer o que for necessário

10 Exemplo de Versão de Vectores  Apenas detecta inconsistências devido à actualização  Não detecta conflitos de read-write

11 Abordagem pessimista  Numa aproximação pessimista iremos abordar uma estratégia de gestão de réplicas:  Primary Site Approach

12 Primary Site Approach  O objectivo desta aproximação é continuar a fornecer acesso aos dados mesmo que ocorram avarias em algum(ns) nó(s) ou na comunicação  O sistema deve ser capaz de distinguir avarias nos nós e avarias na comunicação para controlar o particionamento  Para suportar k-resilient data, os dados têm de ser replicados em pelo menos k+1 nós  Um dos nós que possui os dados são designados por primary e os outros por backups  Todos pedidos para operações nos dados são enviados para o local primary

13 Primary Site Approach  Se o pedido é de leitura:  O local primary executa a operação e retorna os resultados ao processo que fez o pedido  Se o pedido é de actualização:  Antes de executar a actualização, o local primary envia o pedido de actualização a pelo menos k backups  Quando todos os backups receberem o pedido, o primary executa a operação e devolve o resultado  Todos os backups executam a operação de actualização que receberam do primary  Os dados nos backups estão no mesmo estado que no primary

14 Primary Site Approach  Um método alternativo para reduzir a computação nos backups é de:  o primary periodicamente faz uma verificação (checkpoint) do estado dos dados nos backups  Com isto, os backups apenas precisam de executar as operações após a verificação feita pelo primary

15 Primary Site Approach  O que acontece em caso de avarias:  Se mais de k locais falharem simultaneamente, nada pode ser feito, dado que o grau de replicação é apenas de k+1  Nó backup:  O serviço não é interrompido  Nó Primary:  Um novo primary tem de ser eleito.  Continua os pedidos depois de acabar o(s) actual(is) pedido(s) ou continua a partir do checkpoint

16 Primary Site Approach  Partição da Rede:  A partição com o nó primary continua a servir pedidos originados nessa partição  Pedidos feitos noutras partições não podem ser resolvidas  Este método só funciona se avarias de nós podem ser distinguidas de partições da rede


Carregar ppt "Data Replication and Resiliency Trabalho realizado por: Rui Ferreira Nº 15039 Eng. Informática."

Apresentações semelhantes


Anúncios Google