300 likes | 462 Vues
Banco de Dados Parte 04. Ceça. Conteúdo. Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor. Arquitetura de um SGBD. Arquitetura ANSI/SPARC ANSI/SPARC Study Group on Database Management Systems Três níveis de abstração Nível Interno ou Físico
E N D
Conteúdo • Os três níveis da arquitetura • Mapeamentos • Arquitetura cliente-servidor Ceça Moraes
Arquitetura de um SGBD • Arquitetura ANSI/SPARC • ANSI/SPARC StudyGroupon Database Management Systems • Três níveis de abstração • Nível Interno ou Físico • Descreve o modo como os dados estão armazenados • Nível Externo ou Lógico de Usuário • Descreve o modo como os dados são vistos pelos usuários (visões) • Nível Conceitual ou Lógico Comunitário • Nível de simulação entre os dois anteriores; descreve dados e relacionamentos entre eles Ceça Moraes
Arquitetura de um SGBD Nível Externo (Visões de usuários individuais Nível Conceitual (Visões Lógicas do Banco) Nível Interno (Visões do meio de armazenamento) Ceça Moraes
Exemplo: BD de Funcionários • Esquema Conceitual • FUNCIONARIO(NUMERO_FUNCIONARIO:string, NOME_FUNCIONARIO:string,SALARIO:decimal) • DEPARTAMENTO(NUMERO_DEPTO:string, NOME_DEPTO:string) • LOTACAO(NUMERO_FUNCIONARIO:string, NUMERO_DEPTO:string) • Esquema Físico • Relações guardadas como arquivos desordenados • Índices na segunda coluna de FUNCIONARIO • Esquema Externo • info_func(NOME_FUNCIONARIO:string,SALARIO:decimal) Ceça Moraes
Exemplo: BD de Funcionários Ceça Moraes
Mapeamentos entre os níveis • Os itens de dados têm nomes diferentes em certos pontos • O nome do funcionário nas visões... • Java é NOME • Cobol é NOME_F • Conceitual é NOME_FUNCIONARIO • Interna é FUNN • O sistema deve estar ciente dessas correspondências (mapeamento entre visões) Ceça Moraes
Esquemas e mapeamentos construídos e mantidos pelo DBA Mapeamentos Usuário 1 Usuário 2 Usuário n Esquema Externo B Esquema Externo A Mapeamento externo/conceitual B Mapeamento externo/conceitual A Esquema Conceitual SGBD Mapeamento conceitual/interno Definição da estrutura de armazenamento Esquema Interno ... BD armazenado – Visão Interna Ceça Moraes
Linguagens • Linguagem depende do usuário • Programação convencional • Linguagem de Consulta (SQL) • É uma combinação de uma DDL (Data Definition Language) e uma DML (Data Manipulation Language) Ceça Moraes
Linguagem de Definição de Dados (DDL) • Fornece uma notação para definir o esquema do banco de dados Ex:create tableconta (numero_contachar(10),saldo integer); • Compilador de DDL gera um conjunto de tabelas que são armazenadas em um dicionário de dados Ceça Moraes
Linguagem de Manipulação de Dados (DML) • Linguagem para acessar e manipular os dados organizados por um modelo apropriado no BD • Também conhecida com linguagem de consulta • SQL • Linguagem de consulta mais amplamente utilizada • Select,Insert,Update, Delete Ceça Moraes
Mapeamentos • Mapeamento conceitual/interno • Um mapeamento • Define a correspondência entre a visão conceitual e o banco de dados fisicamente armazenado • Mapeamento externo/conceitual • Vários, um para cada visão • Define a correspondência entre uma visão externa específica e a visão conceitual Ceça Moraes
SGBDProcessamentos nos níveis • Trata todos os acessos ao banco. • Um usuário faz um pedido de acesso • O SGBD intercepta o pedido e o analisa • O SGBD inspeciona, por sua vez: • o esquema externo para esse usuário, • o mapeamento externo/conceitual, • o esquema conceitual, • o mapeamento conceitual/interno e • a definição da estrutura de armazenamento • O SGBD executa as operações necessárias sobre o banco de dados armazenado Ceça Moraes
Ambiente SGBD Ceça Moraes
Aplicações Programas Ferramentas Processadores de consultas Geradores de relatório Extração de dados Arquitetura de Aplicação Cliente-Servidor Usuários Finais Aplicações Clientes Servidor SGBD Dados Ceça Moraes
Cliente-Servidor Ceça Moraes
Cliente-Servidor Ceça Moraes
Cliente-Servidor 2 Camadas • Existe um padrão de estabelecer conexão com a aplicação e o SGBD, chamado Open Database Connectiviy(ODBC) • Na linguagem de programação Java é JDBC • simplicidade e a compatibilidade Ceça Moraes
Cliente-Servidor 2 Camadas Ceça Moraes
Cliente-Servidor 2 Camadas Ceça Moraes
Aplicações Aplicações Cliente-Servidor 3 Camadas (Web) Usuários Finais Aplicações Clientes WEB Servidor SGBD Dados Ceça Moraes
Módulos do SGBD Ceça Moraes
Interação entre Módulos do SGBD • O BD e o dicionário de dados são armazenados em disco • acesso ao disco é controlado principalmente pelo sistema operacional (SO) • Módulo de gerenciamento dos dados armazenados do SGBD controla o acesso aos dados e dicionário Ceça Moraes
Interação entre Módulos do SGBD • O gerenciadorde dados armazenados pode usar os serviços do SO para executar a transferência de dados entre o disco e a memória principal do computador • O gerenciador controla a manipulação dos buffers na memória • Uma vez que o dado está nos buffers da memória principal, pode ser processado por outros módulos do SGBD Ceça Moraes
Interação entre Módulos do SGBD • O compilador DDL processa as definições do esquema e as armazena (metadados) no dicionário • O dicionário inclui • nomes e tamanhos dos arquivos • nomes e tipos de itens de dados, • detalhes de armazenamento de arquivos • informações de mapeamentos entre esquemas • restrições Ceça Moraes
Interação entre Módulos do SGBD • processador de banco de dados em tempo de execução (runtime) • controla o acesso ao banco de dados em tempo de execução, • recebe os comandos para a recuperação ou atualização e os executa no banco de dados • Os acessos passam pelo gerenciador de dados armazenados
Interação entre Módulos do SGBD • O compilador de pesquisa (query) manipula as consultas de alto nível que são feitas interativamente • analisa a sintaxe, compila ou interpreta a consulta e então gera as chamadas ao processador em tempo de execução para executar o código Ceça Moraes
Iterações entre Módulos do SGBD • O pré-compilador extrai os comandos DML dos programas escritos em uma linguagem de programação • Esses comandos são enviados para o compilador DML para compilação, gerando códigos para o acesso ao banco de dados.. Ceça Moraes
Referências & Leitura • Navathe – Capítulo 2 • Date – Capítulo 2 Ceça Moraes