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

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

Protocolos de Recuperação

Apresentações semelhantes


Apresentação em tema: "Protocolos de Recuperação"— Transcrição da apresentação:

1 Protocolos de Recuperação
Márcio Augusto Sekeff Sallem

2 Sistemas Distribuídos
Coleção de processos Meio de comunicação: rede Susceptíveis a falhas Protocolos de Recuperação de Falhas Solução

3 Sistemas Distribuídos
Aplicações: Sistemas Cliente-Servidor Processamento de Transações Computação Científica WWW

4 Protocolos de Recuperação de Falhas
Objetivo: estado de consistência global Linha de recuperação Checkpoint: informação mínima de recuperação Técnicas Transparentes Participação do usuário

5 Protocolos de Recuperação de Falhas
Problemas Trocas de mensagens Efeito dominó Metodologias Checkpoints Logging

6 Protocolos de Recuperação de Falhas - Modelagem
Sistema Número fixo de processos Comunicação confiável ou não Execução do processo Seqüência de intervalos de estado Estados são determinísticos Estados são iniciados por eventos não-determinísticos Não admite falhas durante recuperação

7 Protocolos de Recuperação de Falhas - Modelagem
Estados Consistentes Estados Inconsistentes po m p1 po m p1

8 Protocolos de Recuperação de Falhas - Modelagem
Mundo exterior Características dos processos Não podem falhar Não mantém estados Não participam do protocolo de recuperação Causa efeitos irreversíveis Problemas Confirmação externa “Gagueira”

9 Protocolos de Recuperação de Falhas - Modelagem
Encarnações Evitam recebimento de mensagens duplicadas Anexa a mensagem Incrementada após recuperação do processo Mensagens em trânsito Consideradas em comunicação confiável Comunicação não confiável Perda de mensagem por falha do processo ou comunicação?

10 Protocolos de Recuperação de Falhas - Modelagem
Determinismo Protocolos de logging Recriar os eventos não-determinísticos Determinantes dos eventos Armazém estável Coleta de lixo

11 Protocolos baseados em Checkpointing
Conceito de linha de recuperação Vantagens Pouco restritivas Simples Desvantagens Interações com o mundo externo Sem garantia de regeneração do estado pré-falha Tipos Sem coordenação Com coordenação Induzidos

12 Checkpointing sem Coordenação
Funcionamento Falha no processo Broadcast com solicitação de dependência Cálculo da linha de recuperação Vantagem Autonomia para o processo Desvantagens Efeito dominó Checkpoints desnecessários Overhead em coletas de lixo Aplicações com o mundo exterior

13 Checkpointing Coordenado
Com bloqueio: em duas fases Overhead Sem bloqueio Mensagens causam inconsistências Exemplos Marcadores sobrepostos em mensagens c/ Iniciador Relógios sincronizados Mínimo checkpoint coordenado

14 Checkpointing Coordenado
Vantagens Estado consistente global Simplifica a recuperação Evita o efeito dominó Redução do overhead Sem coleta de lixo Desvantagem Latência: comunicação com o mundo exterior

15 Checkpointing Induzido por Comunicação
Checkpoints Local Forçado: andamento da linha de recuperação Sem coordenação Protocolo de coordenação sobreposto em mensagens de controle

16 Checkpointing Induzido por Comunicação
Baseados em modelo Padrões de comunicação e checkpoints Prática conservadora: maior número de checkpoints Baseados em índice Marcas de tempo

17 Protocolos baseados em Logging
Execução de processo Seqüência de intervalos de estado determinísticos Estado iniciado por evento não-determinístico Armazém estável Determinantes dos eventos não-determinísticos Checkpoints Não ocorre processos órfãos

18 Logging Pessimista ou Síncrono
Assume que falhas podem ocorrer após qualquer evento não-determinístico Sincronismo: se um evento não for armazenado no armazém estável, então nenhum processo pode depender dele Overhead Vantagens Comunicação com o mundo exterior Limitação da recuperação (checkpoints)

19 Logging Otimista ou Assíncrono
Escrita em memória volátil e no armazém estável Menor overhead Não há bloqueios Desvantagens Recuperação mais complexa Surgimento temporário de órfãos

20 Logging Otimista ou Assíncrono
Protocolos de recuperação otimista Síncrono: o próprio processo calcula a linha de recuperação baseado em informações e em dependências Assíncrono: o processo envia mensagem de recuperação. Quaisquer outros processos que ficarem “órfãos” enviam também a mensagem. Recuperação exponencial.

21 Logging Casual Vantagens do logging otimista
Sem acesso síncrono, exceto em operações com o mundo exterior Vantagens do logging pessimista Autonomia dos processos Sem surgimento de órfãos Linha de recuperação curta (um checkpoint) Altamente complexo Casualidade

22 Implementações Acesso ao armazém estável
Alto custo Favorece checkpoint coordenado (poucos acessos) Comunicação entre processos: pouco gasto Checkpoints sem coordenação eram melhores antigamente Checkpoints induzidos por mensagem não são escaláveis para muitos processos

23 Implementações Protocolos e canais de comunicação Logging
Sem conceito de posição local (usa-se máscara de posição atual) Canais confiáveis? Logging Cópia de mensagens: armazenamento no destinatário ou remetente? Uso dobrado do canal de comunicação

24 Implementações Armazém estável: discos magnéticos
Não-determinismo: interação processo/SO com eventos assíncronos Idempotentes: retornam valor determinístico As que precisam ser gravadas e não re-executadas (ex: estado do ambiente) As que precisam ser gravadas e ré-executadas (ex: alocação de memória, instanciação)

25 Conclusões Checkpoint Logging Checkpoint coordenado: melhor solução
Pouca comunicação com o mundo exterior Recuperação simples Eficaz Logging Alta comunicação com o mundo exterior Maior overhead Checkpoint coordenado: melhor solução


Carregar ppt "Protocolos de Recuperação"

Apresentações semelhantes


Anúncios Google