21
Administração de Banco de Dados Prof. Luiz Vivacqua 1 Administração de Banco de Dados Luiz Vivacqua ([email protected])

Administração de Banco de Dados - Webnode.com.brfiles.vivacquabd.webnode.com.br/200000009-d9aa1daa52/... · 2011. 2. 24. · Administração de Banco de Dados Prof. Luiz Vivacqua

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

  • Administração de Banco de DadosProf. Luiz Vivacqua

    1

    Administração de Banco de DadosLuiz Vivacqua ([email protected])

  • Administração de Banco de DadosProf. Luiz Vivacqua

    2

    Ementa

    1. Arquitetura Interna do Banco de Dados2. Arquiteturas Externas de sistemas Gerenciadores de

    banco de Dados3. Segurança de Acesso

    • Concessão de privilégios4. Projeto Físico

    • Normalização X Desnormalização

    • Índice

    • Estruturas de Armazenamento

    • Recomendações de ambiente5. Álgebra Relacional6. Processamento de Consultas

  • Administração de Banco de DadosProf. Luiz Vivacqua

    3

    Ementa

    7. Transação • Propriedades• Estados• Serialização

    8. Processamento Concorrente • Bloqueio (lock)• Acesso compartilhado

    9. Recuperação de Falhas • Protocolos baseados no Log

  • Administração de Banco de DadosProf. Luiz Vivacqua

    4

    Bibliografia

    � Sistema de Banco de Dados� Silberschatz, Korth, Sudarshan

    � Editora Campus

    � Sistemas de Banco de Dados� Elmasri, Navathe

    � Editora Pearson

    � Notas de Aula: � http://vivacquabd.webnode.com.br

  • Administração de Banco de DadosProf. Luiz Vivacqua

    5

    SISTEMAS BASEADOS NO PROCESSAMENTO DE ARQUIVOS

    Sistema ASistema AFuncionário

    Pagamento

    Cargo

    Sistema BSistema B Funcionário

    Projeto

  • Administração de Banco de DadosProf. Luiz Vivacqua

    6

    SGBD DadosDados

    Sistema ASistema A

    Sistema BSistema B

    Quais são as grandes Funcionalidadesda caixa preta ?

    Como acaixa preta atende estas Funcionalidades ?

    SISTEMAS GERENCIADORES DE BANCO DE DADOS(SGBD)

  • Administração de Banco de DadosProf. Luiz Vivacqua

    7

    Visão Macro do SGBD

    CompiladorDML

    RequisiçõesCompiladas

    Requisições“EMBEDED”

    Requisições“AD-HOC”

    Otimizador

    RequisiçõesOtimizadas

    Gerente emtempo deexecução

    Dados

    MetaDadosLOG

    Restrições deSegurança eIntegridade

    Concorrência eRecuperação De Falhas

    Plano de Execuçãoda Consulta

    Armazenamento

  • Administração de Banco de DadosProf. Luiz Vivacqua

    8

    � Otimizador� Escolhe a melhor maneira de executar uma consulta.� Diversos planos de execução são gerados e escolhido

    aquele com o menor custo.� Custo estimado em função do número de operações de

    acesso a disco.

    � Segurança e Integridade� O SGBD deve monitorar e controlar o acesso aos

    objetos de forma a permitir que somente usuários autorizados tenham acesso.

    � Garantir que restrições de integridade(referencial, entidade, domínio) não sejam violadas.

    Visão Macro do SGBD

  • Administração de Banco de DadosProf. Luiz Vivacqua

    9

    � Concorrência e Recuperação de Falhas� O sistema deve estar apto a detectar falhas e a recuperar

    o banco de dados ao seu último estado consistente�Ex: falta de energia

    � Controle de Concorrência� O SGBD deve permitir o acesso concorrente por

    múltiplos usuários de forma transparente e segura.

    Visão Macro do SGBD

  • Administração de Banco de DadosProf. Luiz Vivacqua

    10

    �Armazenamento do Dados� Visão lógica

    �Rede -> Registro

    �Relacional -> Tabela

    �OO -> Classe

    � Visão Física

    �Arquivos em disco no sistema operacional

    �Diferentes formas de organização (indexado, hash, seqüencial)

    � Armazenamento dos Metadados

    � Dicionário de Dados (Catálogo do sistema)

    Visão Macro do SGBD

  • Administração de Banco de DadosProf. Luiz Vivacqua

    11

    Visão Detalhada do SGBD

  • Administração de Banco de DadosProf. Luiz Vivacqua

    12

    Visão Detalhada do SGBD

    � Gerenciador Armazenamento� Controla o acesso a informação do SGBD que está armazenada no

    disco.� Implementa os mecanismos de autorização e integridade� Usa os serviços básicos do S.O para transferir dados entre o disco e

    a memória principal� Controla o uso dos “buffers” na memória� Controla o espaço de armazenamento em disco� Implementa as estruturas de dados do sistema físico:

    • Arquivos que armazenam o banco de dados• Dicionário de dadosque armazena o esquema (metadados)

    – Nome e tipo dos itens de dados, tabelas– Nome e definição de índices– Nome e localização dos arquivos – Restrições (“CONSTRAINTS”)

    • Índicesque podem fornecer um acesso mais rápido aos itens de dados

  • Administração de Banco de DadosProf. Luiz Vivacqua

    13

    Visão Detalhada do SGBD

    � Gerenciador Armazenamento(Cont.)� Gerenciador de transação

    • Uma transação é um conjunto de operações que realiza uma única função lógica em uma aplicação.

    • Garante as propriedades de atomicidade e durabilidade.

  • Administração de Banco de DadosProf. Luiz Vivacqua

    14

    Visão Detalhada do SGBD

    � Processador da consulta� Interpretador da DDL que compila e registra as definições no

    dicionário

    � Compilador da DML que traduz os comandos de consulta, atualização e exclusão para uma representação a ser avaliada pelo Otimizador

    � Uma consulta pode gerar diversos planos de execução diferentes. Cabe ao Otimizador do SGBD escolhe o melhor plano (estratégia) em função do custo.

    � Mecanismo de avaliação da consulta que executa as instruções de baixo nível geradas pelo compilador

  • Administração de Banco de DadosProf. Luiz Vivacqua

    15

    Arquiteturas do SGBD

    � A arquitetura de um sistema de banco de dados ébastante influenciada pelo sistema de computador subjacente (arquitetura do ambiente) em que o sistema de banco de dados é executado:

    • Centralizado

    • Cliente / Servidor

    • Distribuído

    • Paralelo

  • Administração de Banco de DadosProf. Luiz Vivacqua

    16

    Arquitetura Centralizada

    �São sistemas executados sobre um único Sistema Computacional�Podem ter o tamanho de um BD mono-usuário, rodando em um computador pessoal, até BD multi-usuário, executando em máquinas de grande poder de processamento (mainframe)

    ProgramasAplicação

    BDSGBDSistema

    Operacional

  • Administração de Banco de DadosProf. Luiz Vivacqua

    17

    Arquitetura Cliente/Servidor

    �Os programas de aplicação residem nos computadores cliente�O SGBD reside numa máquina servidor�O driver formata as solicitações das aplicações para envio ao SGBD�O software de comunicação interage com o hardware para troca de mensagens entre o driver do SGBD e o próprio SGBD

    ProgramasAplicação

    Driver doSGBD

    COM

    computador Cliente

    COM SGBD SO

    computador Servidor

    BD

  • Administração de Banco de DadosProf. Luiz Vivacqua

    18

    Arquitetura em três Camadas

  • Administração de Banco de DadosProf. Luiz Vivacqua

    19

    Distribuído

    �O Banco de Dados fica armazenado em diversas máquinas�Estas máquinas se comunicam pela rede�Em cada computador, que pode ser de qualquer tamanho, existe um servidor de Banco de Dados ( SGBD)

    Rede

    SGBD SGBD

    SGBD

    Site1

    Site2

    Site3

  • Administração de Banco de DadosProf. Luiz Vivacqua

    20

    Paralelo�O Banco de Dados fica armazenado em uma máquina com diversos processadores�Estes processadores se comunicam por uma rede de conexão de alta velocidade�Os dados podem ser alocados segundo diversas técnicas de distribuição

    DadosDados

    Dados

    Nó 1

    Nó 2

    Nó nSGBD

    Dados

    Nó 3

  • Administração de Banco de DadosProf. Luiz Vivacqua

    21

    Utilitários do SGBD

    � São programas que estão incluídos no SGBD e facilitam algumas tarefas do DBA como:� Backup (dump, backup, export, recover, etc)

    � Carga de dados (load, copy, etc)

    � Reorganização dos dados (export/import, vacuum)

    � Monitoramento de desempenho (analyse)