Arquitetura de um SGBD Prof. Alexander Roberto Valdameri Sistema de BD Usuário Sistema BD Consultas / Programas de Aplicação SGBD Software para processar consultas/programas Software para acessar dados armazenados Dados Dados FURB/DSC - Prof. Alexander Roberto Valdameri 2 Visão geral do SGBD: “Um sistema cujo objetivo principal é gerenciar o acesso e a correta manutenção dos dados armazenados em um banco de dados.” FURB/DSC - Prof. Alexander Roberto Valdameri 3 Arquitetura de um SGBD Estudo de caso: “Um funcionário do departamento de produção de uma indústria utiliza-se de uma aplicação para atualizar o estoque ...” FURB/DSC - Prof. Alexander Roberto Valdameri 4 Arquitetura X Usuário • Interação: segmentos; dispositivos; • Conhecer seus atributos. FURB/DSC - Prof. Alexander Roberto Valdameri 5 Arquitetura de um SGBD • Basicamente 3 níveis: Nível Interno; Nível Externo; Nível Conceitual. FURB/DSC - Prof. Alexander Roberto Valdameri 6 Nível Externo: • Nível lógico do usuário; • Linguagem de manipulação; • Alto Nível de Abstração; • Utilização de L4Gs. FURB/DSC - Prof. Alexander Roberto Valdameri 7 Nível Conceitual: • Nível Intermediário; • Nível lógico comunitário; • Médio nível de abstração; • Visão de total do DB. FURB/DSC - Prof. Alexander Roberto Valdameri 8 Nível Interno: • Nível físico; • Esquema interno: Tipos de registro; Índices. • Linguagem DDL Interna: EMP_ARMAZENADO BYTES=20 PREFIXO TYPE=BYTE(6),OFFSET=0 EMP# TYPE=BYTE(6),OFFSET=6,INDEX=EMPX DEPTO# TYPE=BYTE(4),OFFSET=12 PAGTO TYPE=FULLWORD,OFFSET=16 FURB/DSC - Prof. Alexander Roberto Valdameri 9 Representação gráfica: Usuários Finais Nível Externo Visão Externa 1 ... Visão Externa N Mapeamento externo/conceitual Nível Conceitual Esquema Conceitual Mapeamento conceitual/interno Nível Interno Esquema Interno FURB/DSC - Prof. Alexander Roberto Valdameri 10 O papel do SGBD: • Usuário faz um pedido – SQL; • SGBD Intercepta e analisa; • SGBD inspeciona os esquemas e os mapeamentos; • SGBD executa as operações. FURB/DSC - Prof. Alexander Roberto Valdameri 11 Funções Básicas do SGBD • Métodos de Acesso: DDL e DML; • Restrições de Integridade: Consistência no BD; Estados possíveis; Relacionamentos. FURB/DSC - Prof. Alexander Roberto Valdameri 12 Funções Básicas do SGBD • Segurança: Autorização de acesso; Recuperação de falhas. • Controle de concorrência: Evitar conflito de acesso; Estratégias de bloqueio (lock). FURB/DSC - Prof. Alexander Roberto Valdameri 13 Funções Básicas do SGBD • Independência dos Dados: Transparência para aplicações - gerenciamento e armazenamento; Independência física; Independência lógica; FURB/DSC - Prof. Alexander Roberto Valdameri 14 Funcionamento do SGBD: Usuário Final Visão Visão Externa SGBD Externa A Mapeamento Conceitual Externo Esquema Conceitual Mapeamento Conceitual Interno Banco de Dados Armazenado Esquema Interno FURB/DSC - Prof. Alexander Roberto Valdameri 15 Componentes de um SGBD Usuário/aplicativo Compilador de Consultas Plano de Gerenciador de transações de dados Controle de concorrência Registro de log e recuperação Gerenciador de Arquivos Comandos Tabela de Bloqueio de páginas Gerenciador de Buffer Leitura/gravação Compilador de DDL consulta Mecanismo de Execução Solicitações Administrador de BD Buffers de páginas Gerenciador de Armazenamento FURB/DSC - Prof. Alexander Roberto Valdameri Armazenamento 16 Comunicação com usuário • Troca de mensagens, em ambos os sentidos; • Gerenciador de comunicação de dados - autônomo; • Sincronizado com o SGBD. FURB/DSC - Prof. Alexander Roberto Valdameri 17 Dicionário de Dados • • • • • Cátalogo do SGBD – metadados; Estrutura do esquema; Integridade (restrição/autorização); Configurações do SGBD; Estimativas de acesso e sobre os dados armazenados. FURB/DSC - Prof. Alexander Roberto Valdameri 18 Pessoas envolvidas no SGBD • Analistas de Sistemas; • Programadores de aplicação; • Usuários Finais: Ocasionais; Paramétricos; Sofisticados. FURB/DSC - Prof. Alexander Roberto Valdameri 19