Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouFernando Horta Alterado mais de 9 anos atrás
1
Banco de Dados Parte 04 Ceça
2
Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor
3
Ceça Moraes 3 Arquitetura de um SGBD Arquitetura ANSI/SPARC ANSI/SPARC Study Group on Database Management Systems Três níveis de abstração InternoFísico Nível Interno ou Físico Descreve o modo como os dados estão armazenados ExternoLógico de Usuário Nível Externo ou Lógico de Usuário Descreve o modo como os dados são vistos pelos usuários (visões) ConceitualLógico Comunitário Nível Conceitual ou Lógico Comunitário Nível de simulação entre os dois anteriores; descreve dados e relacionamentos entre eles
4
Ceça Moraes 4 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)
5
Ceça Moraes 5 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)
6
Ceça Moraes 6 Exemplo: BD de Funcionários Externo Java Externo Cobol public class func { 01 FUNC private String NOME; 02 NOME_F PIC X(29). private double SAL; 02 SAL PIC 9(10,5). Conceitual FUNCIONARIO NÚMERO_FUNCIONARIO CHARACTER (6) NOME_FUNCIONARIO CHARACTER (29) SALÁRIO NUMERIC(5) Interno FUNC_ARMAZENADO BYTES=46 PREFIXO TYPE=BYTE(6),OFFSET=0 FUN# TYPE=BYTE(6),OFFSET=6,INDEX=FUNX FUNN TYPE=BYTE(29),OFFSET=12 PAGTO TYPE=FULLWORD,OFFSET=41
7
Ceça Moraes 7 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)
8
Ceça Moraes 8 Mapeamentos Aplicação Usuário 1Usuário 2Usuário n Aplicação Esquema Externo A Esquema Externo B Visão Externa A Mapeamento externo/conceitual A Mapeamento externo/conceitual B SGBD... BD armazenado – Visão Interna Visão Externa B Mapeamento conceitual/interno Definição da estrutura de armazenamento Esquema Interno Esquema Conceitual Visão Conceitual Esquemas e mapeamentos construídos e mantidos pelo DBA
9
Ceça Moraes 9 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)
10
Ceça Moraes 10 Linguagem de Definição de Dados (DDL) Fornece uma notação para definir o esquema do banco de dados Ex: create table conta ( numero_conta char(10), saldo integer); Compilador de DDL gera um conjunto de tabelas que são armazenadas em um dicionário de dados
11
Ceça Moraes 11 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
12
Ceça Moraes 12 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
13
Ceça Moraes 13 SGBD Processamentos 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
14
Ambiente SGBD Ceça Moraes 14
15
Arquiteturas de acesso em Camadas
16
Ceça Moraes 16 Arquitetura de Aplicação Cliente- Servidor Aplicações Programas Ferramentas Processadores de consultas Geradores de relatório Extração de dados Aplicações Clientes Usuários Finais SGBD Servidor Dados
17
Cliente-Servidor Ceça Moraes 17
18
Cliente-Servidor Ceça Moraes 18
19
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 19
20
Cliente-Servidor 2 Camadas Ceça Moraes 20
21
Cliente-Servidor 2 Camadas Ceça Moraes 21
22
Ceça Moraes 22 Cliente-Servidor 3 Camadas (Web) Clientes Usuários Finais Aplicações WEB SGBD Servidor Dados
23
Módulos do SGBD Ceça Moraes 23
24
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 24
25
Interação entre Módulos do SGBD O gerenciador de 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 25
26
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 26
27
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 27
28
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 28
29
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 29
30
Ceça Moraes 30 Referências & Leitura Navathe – Capítulo 2 Date – Capítulo 2
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.