Falhas.

Slides:



Advertisements
Apresentações semelhantes
Checkpoint SGBD com alta demanda de transações Checkpoint
Advertisements

Introdução Gdes. bancos de dados: Concorrência: Transação:
Controle de Concorrência Serializabilidade
Sistema de recuperação
Requisitos dos SGBD Recuperação/Tolerância a Falhas
Sistemas operacionais
Entrada e Saída Introdução.
Sistemas de Informação Redes de Computadores
© Marcelo Bezerra de AlcântaraBanco de Dados II - Transação - 1 Disciplina Banco de Dados II Recuperação de falha Msc, Marcelo Bezerra de Alcântara
© Marcelo Bezerra de AlcântaraBanco de Dados II – Controle de Concorrência - 1 Disciplina Banco de Dados II Introdução ao Controle de Concorrência Msc,
© Marcelo Bezerra de AlcântaraBanco de Dados II - Transação - 1 Disciplina Banco de Dados II Gerenciamento de transações Msc, Marcelo Bezerra de Alcântara.
Recuperação Como garantir a integridade da informação, em caso de avarias de HW ou SW forma de suportar a reposição de um estado consistente da informação.
Bloqueios partilhados
Motor de Armazenamento
SGBD.
Transações Atômicas Distribuídas
Transações Atômicas Distribuídas
Cap Recuperação Pretende garantir a atomicidade e durabilidade das transações. Atomicidade => É responsabilidade do gerente de recuperação voltar.
Sumário 1 SQL Embutida 2 Processamento de Consultas
Processamento de Transação
Componentes Arquitetônicos de um Banco de Dados Oracle
Banco de Dados Oracle AESO.
Sistemas Distribuídos Sincronização e Coordenação
Fabio Notare Martins Pontifícia Universidade Católica do Rio Grande do Sul Programa de Pós-Graduação em Ciências da Computação.
Fundamentals of Database Processing
Org. e Projeto de Banco de Dados
Fundamentos de Banco de Dados Prof. Alexander Roberto Valdameri
RECUPERAÇÃO APÓS FALHA
Universidade da Beira Interior Fiabilidade de Sistemas Informáticos Nuno Magarreiro n.º
Gerenciamento de Transações - Introdução
Fundamentos da Arquitetura de Computadores
Banco de Dados II Prof. Antônio Cordeiro.
Controle de Concorrência em Transações Álvaro Vinícius de Souza Coêlho
Paulo Silva Tracker Segurança da Informação
Data Replication and Resiliency Trabalho realizado por: Rui Ferreira Nº Eng. Informática.
Transações Prof: Galina
SISTEMAS DE GERENCIAMENTO DE BANCO DE DADOS Hélder Lima e Silva - hmls
Exercícios SGBD - CESPE
Transações Atômicas Distribuídas Prof. Alcides Calsavara
Controle de concorrência
BD Distribuído Conceitos Iniciais.
SGBD Distribuído Lílian Simão Oliveira.
Prof. Alessandro Gonçalves
Sistemas Tolerantes a Falhas: Conceitos e Técnicas
Testes de Software AULA 02 Eduardo Silvestri
System R Recovery System Vitor Silva. Tópicos O System R System R Recovery System Shadows Log Protocolo Do, Undo, Redo CheckPoints Reinício do Sistema.
SCC Bancos de Dados e Suas Aplicações
SISTEMAS DISTRIBUÍDOS Transações Atômicas
Introdução a Banco de Dados Aula 04
Backup Ação de copiar arquivos, como medida de segurança, permitindo sua recuperação em caso de perda.
Pablo Oliveira Antonino de Assis. Agenda  Objetivo.  Introdução.  Protocolos de Recuperação.  LOG’s.  Gerenciamento de LOG em MDS.  Recuperação.
Curso de Pós Graduação em Banco de Dados Procedimentos de Contigência e Alta Disponibilidade Prof.: MSc Flávio Gonçalves da Rocha.
Um alternativa para o armazenamento
Modos de Desconexão para BD’s Móveis Sandberg Marcel Santos Baseado no artigo “Disconnection Modes for Mobile Databases”, de Holliday, Agrawal e El Abbadi.
Controle de Concorrência
PostGres - Transacções
Sumário 1 Processamento de Consultas 2 Introdução a Transações
Sumário 1 Processamento de Consultas 2 Introdução a Transações
Transações Banco de Dados II Aline S Costa 1. TRANSAÇÕES Conjunto de operações que formam uma única unidade lógica de trabalho; Conjunto de instruções.
Backup & Recover. Revisando Falhas Podem ocorrer falhas em um ambiente computacional: a) Erros lógicos: ex. overflow b) Erros do sistema: ex. deadlock.
Aula – Sistemas Operacionais
Daniel Paulo Backup Para evitar perdas de informações importantes, será necessário criar estratégias para a implementação de.
Daniel Paulo Introdução O tempo de resposta de um sistema é determinado pelo tempo que ele leva para retornar aos usuários às.
Microsoft SQL Server Instruções para instalação/ recuperação de bancos de dados no SQL Server.
UCSal – Bacharelado em Informática
Sistemas Operacionais IV – Gerenciamento de E/S
Sistemas de Arquivos. Alocação em memória – Problemas Quantidade Limitada de Informações Perda de informações quando o processo é terminado Vários processos.
Banco de Dados Distribuídos Sílvia Cristina de Matos Soares
 Trabalho realizado por:  Francisco de Assis Marinho Lanza;  Simone Martins Rodrigues;  Tânia Moraes Nascimento da Fonseca.
M Fernando Forte2005 TRANSACÇÕES HSQL - Hypersonic SQL TECNOLOGIA DE BASES DE DADOS.
Transcrição da apresentação:

Falhas

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

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

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

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.

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

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

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

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

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

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

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

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

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

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)

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

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.

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)

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

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

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

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

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

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