Unopar 11
Pesquisas Acadêmicas: Unopar 11. Pesquise 861.000+ trabalhos acadêmicosPor: timbupe • 7/6/2013 • 1.981 Palavras (8 Páginas) • 405 Visualizações
6.3. Tolerância a falhas em BD
Diagrama de estados de uma transação
6.1. Classificação das falhas
Tipos de Falhas
1. Falha na transação detectada pelo próprio código
Ex.: “Fundos insuficientes”
2. Falha na transação não prevista no código
Ex.: Overflow, divisão por zero
3. Falha no sistema que não danifica o BD
Ex.: System crash, Deadlock
4. Falha nos periféricos que danifica o BD
Ex.: Falha no disco, cabeçote
Quando uma Ti aborta:
Pode ser reiniciada
Pode ser cancelada
6.2 Log (Journal, History)
É um arquivo que mantém todas as operações que as transações efetuaram no BD;
É usado para recuperar o sistema na ocorrência de falhas;
É mantido em disco e em fita (backup).
Tipos de registros gravados no log:
1. [ Start_Transaction, T1 ] : T1 inicia a execução;
2. [ Write (X), T1, ValorAntigo, ValorNovo ]
3. [ Read (X), T1 ]
4. [ Commit, T1 ]
Obs.: Como veremos a seguir, alguns protocolos de recuperação não requerem que [ Read (X), T] seja gravado no log => menor overhead!
6.3. Checkpoint
Motivação:
Quando ocorrer uma falha, o sistema não precisa pesquisar todo o log, nem refazer transações que não precisem de REDO
Diminuir overhead de recuperação
Solução: Checkpoints
Periodicamente, um registro de checkpoint é gravado no log
Cada gravação requer as seguintes ações:
1. Forçar a gravação do LOG em disco
2. Gravar os buffers do BD em disco
3. Gravar um registro de checkpoint no LOG
6.3. Tolerância a falhas em BD
Diagrama de estados de uma transação
6.1. Classificação das falhas
Tipos de Falhas
1. Falha na transação detectada pelo próprio código
Ex.: “Fundos insuficientes”
2. Falha na transação não prevista no código
Ex.: Overflow, divisão por zero
3. Falha no sistema que não danifica o BD
Ex.: System crash, Deadlock
4. Falha nos periféricos que danifica o BD
Ex.: Falha no disco, cabeçote
Quando uma Ti aborta:
Pode ser reiniciada
Pode ser cancelada
6.2 Log (Journal, History)
É um arquivo que mantém todas as operações que as transações efetuaram no BD;
É usado para recuperar o sistema na ocorrência de falhas;
É mantido em disco e em fita (backup).
Tipos de registros gravados no log:
1. [ Start_Transaction, T1 ] : T1 inicia a execução;
2. [ Write (X), T1, ValorAntigo, ValorNovo ]
3. [ Read (X), T1 ]
4. [ Commit, T1 ]
Obs.: Como veremos a seguir, alguns protocolos de recuperação não requerem que [ Read (X), T] seja gravado no log => menor overhead!
6.3. Checkpoint
Motivação:
Quando ocorrer uma falha, o sistema não precisa pesquisar todo o log, nem refazer transações que não precisem de REDO
Diminuir overhead de recuperação
Solução: Checkpoints
Periodicamente, um registro de checkpoint é gravado no log
Cada gravação requer as seguintes ações:
1. Forçar a gravação do LOG em disco
2. Gravar os buffers do BD em disco
3. Gravar um registro de checkpoint no LOG
6.3. Tolerância a falhas em BD
Diagrama de estados de uma transação
6.1. Classificação das falhas
Tipos de Falhas
1. Falha na transação detectada pelo próprio código
Ex.: “Fundos insuficientes”
2. Falha na transação não prevista no código
Ex.: Overflow, divisão por zero
3. Falha no sistema que não danifica
...