190 likes | 314 Views
Requisitos dos SGBD Recuperação/Tolerância a Falhas.
E N D
Requisitos dos SGBDRecuperação/Tolerância a Falhas • O valor da informação disponível numa BD torna importante que esta esteja permanentemente num estado de integridade ou, se tal não for possível, que a sua indisponibilidade ocorra num curto espaço de tempo e que se faça a sua reposição para um estado de integridade.
Requisitos dos SGBDRecuperação/Tolerância a Falhas • A recuperação/tolerância a falhas tem por objectivo restaurar a BD para um estado de integridade, após a ocorrência de uma falha; • Os mecanismos de recuperação baseiam-se na utilização de formas de redundância que quase duplicam a BD, utilizando: • Backup e transaction log
Requisitos dos SGBDRecuperação/Tolerância a Falhas • Os backups são cópias de segurança da BD, que são executados periodicamente e constituem um ponto de partida para a recuperação da BD após a ocorrência de uma falha, independentemente da sua gravidade; • Reflectem uma situação passada, donde a reposição a partir de um backup implica perder todas as actualizações posteriores à realização do mesmo.
Requisitos dos SGBDRecuperação/Tolerância a Falhas • Uma forma de minimizar esta situação é aumentando a periodicidade dos backups, o que é um processo pesado, consumidor de recursos e que pode obrigar a paragens dos sistemas; • A periodicidade dos backups depende do valor dos dados, do seu volume e da frequência com que são acedidos e alterados;
Requisitos dos SGBDRecuperação/Tolerância a Falhas • O backup é um mecanismo de reposição da BD. Os transaction logs são mecanismos de repetição das transacções ocorridas desde o último backup (rollforward); • Normalmente para se refazer uma transacção é necessário o ficheiro de transaction log, onde está guardada uma identificação da transacção e uma cópia dos dados actualizados por ela (after image);
Requisitos dos SGBDRecuperação/Tolerância a Falhas • Sendo esta a forma mais comum de resolver os problemas provocados por uma falha, têm que existir outros mecanismos que permitam o roll back das transacções não terminadas, ocorridos durante a execução não sucedida das mesmas; • Donde o ficheiro transaction log necessita igualmente de guardar os dados anteriores ao início da execução da transacção (before-images)
Requisitos dos SGBDRecuperação/Tolerância a Falhas • É da conjugação destes dois mecanismos - backups e transaction logs , que se garantem duas das características fundamentais das transacções: • Atomicidade (desfazendo uma transacção não sucedida) • Persistência (refazendo os efeitos de uma transacção bem sucedida)
Requisitos dos SGBDTipo de Falhas Falha de disco - o(s) disco(s) onde a BD está armazenada fica(m) inutilizado(s). É a falha considerada mais grave e que obriga à reconstrução de todo o SGBD; Falha de sistema - pode resultar de problemas de hardware ou software, não sendo possível garantir a validade dos dados. Implica repor a BD a partir do seu último estado de integridade.
Requisitos dos SGBDTipo de Falhas • Falha de transacção - é a mais inofensiva e recupera-se recorrendo ao ficheiro transaction log e às before images da transacção que não foi bem sucedida. • Em qualquer processo de recuperação recorre-se ao rollback das transacções efectuadas até ao momento em que os transaction log e os ficherios da base estão sincronizados, para se poderem desfazer todas as transacções decorridas desde então.
Requisitos dos SGBDTipo de Falhas • Esse momento coincide com o último backup, o qual se muito afastado no tempo, obriga a um processo moroso e complexo de recuperação da BD. Tn Tn+1 Tn+2 Tn+3 Falha de disco Último backuo
Requisitos dos SGBDTipo de Falhas • Para evitar este tipo de situações, recorre-se a marcas de segurança, conhecidas por checkpoints. • Basicamente, para reduzir o número de acessos aos discos, nos ficheiros de transaction log as actualizações são realizadas na memória RAM, em buffers, sendo posteriormente escritos em disco;
Requisitos dos SGBDTipo de Falhas • Quando ocorre uma falha, o conteúdo desses buffers pode perder-se, ou pelo menos pode não existir uma garantia de validade do seu conteúdo; • Assim os checkpoints registam os momentos em que o conteúdo dos buffers foi escrito nos discos, definindo-se um momento em que o transaction log e a BD estão sincronizados.
Tn Tn+1 Tn+2 Tn+3 Falha de Sistema Último backuo Requisitos dos SGBDTipo de Falhas Checkpoint
Sistema de Base de Dados vs Sistemas de Gestão de Ficheiros • Diferenças mais importantes entre as duas abordagens: • Abstracção de dados – a nível aplicacional não é necessário conhecer pormenores como comprimento de registos, métodos de acesso, etc.; • Independência programas/dados – nos sistemas de gestão de ficheiros a definição dos dados faz parte das aplicações, pelo que estas têm de ser alteradas sempre que se alteram as estruturas dos dados; • Partilha de dados – no sistema de gestão de ficheiros é o nível aplicacional que faz a gestão da concorrência; • Diminuição da Redundância – no sistemas de BD a redundância pode ser controlada e quase reduzida;
Sistema de Base de Dados vs Sistemas de Gestão de Ficheiros (cont.) • Controlo no acesso aos dados – a possibilidade de criação de “vistas” parciais sobre os dados, podem dar-se autorizações mais ou menos limitadas; • Desenvolvimento + Manutenção – o desenvolvimento é efectuada a mais alto nível, evitando perda de tempo com pormenores irrelevantes à solução; idem no que refere à manutenção; • Integridade dos dados – pela utilização de regras que traduzem as condições de validade dos dados, é o sistema de BD que vai assumir a correcção dos dados submitidos ao sistema; • Mecanismos de Recuperação a falhas – sendo uma característica dos sistemas de BD, esta recuperação é mais fiável que a efectuada através de desenvolvimento de aplicações específicas; • Questões ad-hoc
Sistema de Base de Dados vs Sistemas de Gestão de Ficheiros (cont.) • Questões ad-hoc – esta é sem dúvida a potencialidade mais importante e apreciada. Interagindo com o sistema de BD o utilizador pode obter, em run-time, respostas a questões imprevisíveis.
Administradores e Utilizadores dos SGBD’s As categorias de utilizadores que intervêm num determinado sistema de BD, depende da natureza da BD, da sua dimensão e do tipo de organização em que é implementada. Porém e utilizando uma classificação genérica, os utilizadores podem ser classificados da seguinte forma: • utilizadores finais que actuam como operadores das aplicações que acedem à BD;
Administradores e Utilizadores dos SGBD’s • Utilizadores especializados possuem os conhecimentos teóricos e práticos que lhes permite interagir com o interface do sistema de forma a actualizar informação na BD, criar novas BD, etc.; • Programadores- técnicos com conhecimentos adequados para a criação de aplicações;
Administradores e Utilizadores dos SGBD’s • Administradores- responsáveis pela definição e implementação da política de informação da empresa. Por ex. :definir o tipo de informação, as permissões de acesso à informação.