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

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

Falhas.

Apresentações semelhantes


Apresentação em tema: "Falhas."— Transcrição da apresentação:

1 Falhas

2 Falhas Podem ocorrer falhas em um ambiente computacional:
a) Erros lógicos: ex. overflow b) Erros do sistema: ex. deadlock c) Queda do sistema: ex. falta de energia d) Falhas nos meios: ex. falha de disco

3 Falhas Tipos de erros numa base de dados Corrupções Erro humano
Corrupção lógica Corrupção física Erro humano Erros acidentais ao configurar tabelas Desastres Terramotos, incêndios, tornados Falta de energia eléctrica por um período muito longo

4 Recuperação Consiste em: Tipos de recuperação
Restaurar a copia dos datafiles através de um backup Reaplicar todas as alterações ao arquivo a partir do backup Tipos de recuperação Media recovery (datafile media recovery) Crash recovery Instance recovery Incomplete recovery Flashback database

5 Backup Backup Físico Backup Lógico
Consiste em copiar os arquivos da base de dados para outro sítio Podem ser criados usando o RMAN (Recovery Manager) ou através do sistema operativo Backup Lógico Utiliza SQL para ler a base de dados e exportar para um arquivo binário.

6

7 Recuperação de Falhas Garantia de atomicidade e durabilidade de Transações requer um SGBD tolerante a falhas Tolerância a falhas em BDs capacidade de conduzir o BD a um estado passado consistente, após a ocorrência de uma falha que o deixou em um estado inconsistente baseia-se em redundância de dados não é um mecanismo 100% seguro responsabilidade do subsistema de recovery do SGBD

8 Subsistema de Recovery
Controles durante o funcionamento normal do SGBD manter informações sobre o que foi atualizado no BD pelas transações realizar cópias periódicas do BD após a ocorrência de uma falha executar ações para retornar o BD a um estado consistente ações básicas UNDO: desfazer uma atualização no BD REDO: refazer uma atualização no BD Considerações sobre o seu projeto tipos de falhas a tratar técnica de recovery a aplicar

9 Ações Básicas de Recovery
Transaction UNDO uma transação não concluiu suas operações as modificações realizadas por esta transação no BD são desfeitas Global UNDO uma ou mais transações não concluíram as suas operações as modificações realizadas por todas estas transações no BD são desfeitas Partial REDO na ocorrência de uma falha, algumas transações podem ter concluído suas operações (committed), mas suas ações podem não ter se refletido no BD as modificações realizadas por estas transações são refeitas no BD Global REDO no caso de um comprometimento do BD, todas as transações committed no BD são perdidas as modificações realizadas por todas estas transações no BD são refeitas

10 Tipos de Falhas Falha de Transação
uma transação ativa termina de forma anormal causas violação de RI, lógica da transação mal definida, deadlock, cancelamento pelo usuário, ... não compromete a memória principal e a memória secundária (disco, em geral) falha com maior probabilidade de ocorrência seu tempo de recuperação é pequeno ação: Transaction UNDO

11 Tipos de Falhas Falha de sistema
o SGBD encerra a sua execução de forma anormal causas interrupção de energia, falha no SO, erro interno no SW do SGBD, falha de HW, ... compromete a memória principal e não compromete o disco falha com probabilidade média de ocorrência seu tempo de recuperação é médio ações: Global UNDO e Partial REDO

12 Tipos de Falhas Falha de meio de armazenamento
o BD torna-se total ou parcialmente inacessível causas setores corrompidos no disco, falha no cabeçote de leitura/gravação, ... não compromete a memória principal e compromete o disco falha com menor probabilidade de ocorrência seu tempo de recuperação é grande ação: Global REDO

13 Técnicas de Recovery Baseadas em Log Baseadas em Shadow Pages
modificação imediata do BD técnica UNDO/REDO técnica UNDO/NO-REDO modificação postergada do BD técnica NO-UNDO/REDO recuperação de meio de armazenamento técnica ARCHIVE/DUMP/REDO Baseadas em Shadow Pages técnica NO-UNDO/NO-REDO recuperação de falhas de transação e de sistema recuperação de falhas de transação e de sistema

14 Técnicas Baseadas em Log
Técnicas mais comuns de recovery Utilizam um arquivo de Log (ou Journal) registra seqüencialmente as atualizações feitas por transações no BD é consultado em caso de falhas para a realização de UNDO e/ou REDO de transações mantido em uma ou mais cópias em memória secundária (disco, fita, ...) tipos de log log de UNDO mantém apenas o valor antigo do dado (before image) log de REDO mantém apenas o valor atualizado do dado (after image) log de UNDO/REDO (mais comum) mantém os valores antigo e atualizado do dado

15 Tipos de Registro no Log
Supõe-se que toda transação possui um identificador único gerado pelo SGBD Para fins de recuperação de falhas, operações read não precisam ser gravadas úteis apenas para outros fins (auditoria, estatísticas, ...) Principais tipos de registro início de transação: <start Tx> commit de transação: <commit Tx> atualização: <write Tx,X,beforeImage,afterImage> não é necessário em log REDO não é necessário em log UNDO

16 Exemplo de Log T1 Log <start T3> <write T3,B,15,12>
read(A) read(D) write(D) <start T3> <write T3,B,15,12> <start T2> <write T2,B,12,18> <start T1> <write T1,D,20,25> <commit T1> <write T2,D,25,26> <write T3,A,10,19> <commit T3> <commit T2> ... T2 read(B) write(B) read(D) write(D) T3 read(C) write(B) read(A) write(A)

17 Fases de Recuperação (1)
Todas as recuperações têm de passar por duas fases: Roll Foward Aplica sequencialmente as alterações de blocos (redo records) contidas nos redo log files Le os redo records e e obtém os blocos originais A tabela interna undo$ contem a informação das transacções pendentes, até que o sejam encontrados os redo recornd com info de commit Nessa altura essa informação é retirada da tabela

18 Fases de Recuperação (2)
Roll Backward Depois do roll foward todas as transacções que não fizeram commit têm de ser desfeitas É feito o rollback a todas as alterações que não fizeram commit.

19 Media Recovery É usado para recuperar datafiles, controlfiles ou spfiles danificados ou perdidos. Tem de ser o administrador A base de dados tem de estar fechada O datafile tem de estar offline A recuperação começa sempre no arquivo com menor SCN (Sistem Change Number)

20 Crash Recovery (1) É usado quando uma instância é iniciada depois de um shutdown abort ou de um crash Feito automaticamente Cabe ao administrador tentar apenas perceber as causas que da falha Utiliza online redo logs para realizar a recuperação dos datafiles envolvidos no crash

21 Crash Recovery (2) São repetidas as transacções no online redo log a partir da posição do checkpoit O checkpoint encontra-se na posição onde a última alteração foi guardada São aplicadas as committed tansaction e as uncommitted transactions

22 Instance Recovery Acontece quando uma instância detecta a falha de outra instância Mecanismo idêntico ao do Crash Recovery Não é restaurada a instância em falha nem nenhuma aplicação que estava a correr nessa instância

23 Incomplete Recovery Acontece quando uma parte dos dados é perdida mesmo após a recuperação Acontece quando não se possui todos os items necessários à recuperação Por vezes é utilizada apenas para recuperar a base de dados até um certo ponto através de um backup

24 Flashback Database (1) Utilizada em alternativa ao point-in-time recovery Usa um tipo de log diferente – Flashback Database log O servidor da base de dados escreve periodicamente nos logs as imagens dos blocos de dados Essas imagens são utilizadas para recuperar rapidamente as alterações na base de dados

25 Flashback Database (2) Método mais rápido que o point-in-time recovery
Reduz o tempo necessário à recuperação porque não utiliza backups O tempo da recuperação é proporcional ao número de alterações e não ao tamanho da base de dados


Carregar ppt "Falhas."

Apresentações semelhantes


Anúncios Google