Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura ...
Transcript of Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura ...
![Page 1: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/1.jpg)
Banco de Dados Parte 04
Ceça
![Page 2: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/2.jpg)
Ceça Moraes2
Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor
![Page 3: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/3.jpg)
Ceça Moraes3
Arquitetura de um SGBD
Arquitetura ANSI/SPARC ANSI/SPARC Study Group on Database Management
Systems
Três níveis de abstração Nível InternoInterno ou FísicoFísico
Descreve o modo como os dados estão armazenados Nível ExternoExterno ou Lógico de UsuárioLógico de Usuário
Descreve o modo como os dados são vistos pelos usuários (visões)
Nível ConceitualConceitual ou Lógico ComunitárioLógico Comunitário Nível de simulação entre os dois anteriores; descreve
dados e relacionamentos entre eles
![Page 4: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/4.jpg)
Ceça Moraes4
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)
![Page 5: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/5.jpg)
Ceça Moraes5
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:d
ecimal)
![Page 6: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/6.jpg)
Ceça Moraes6
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
![Page 7: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/7.jpg)
Ceça Moraes7
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)
![Page 8: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/8.jpg)
Ceça Moraes8
Mapeamentos
Aplicação Aplicação
Usuário 1 Usuário 2 Usuário n
Aplicação
EsquemaExterno A
EsquemaExterno 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 Conceitua
l
Visão ConceitualEsquemase mapeamentosconstruídos emantidospelo DBA
![Page 9: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/9.jpg)
Ceça Moraes9
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)
![Page 10: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/10.jpg)
Ceça Moraes10
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
![Page 11: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/11.jpg)
Ceça Moraes11
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
![Page 12: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/12.jpg)
Ceça Moraes12
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
![Page 13: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/13.jpg)
Ceça Moraes13
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
![Page 14: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/14.jpg)
Ambiente SGBD
Ceça Moraes14
![Page 15: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/15.jpg)
Arquiteturas de acesso em
Camadas
![Page 16: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/16.jpg)
Ceça Moraes16
Arquitetura de Aplicação Cliente-
Servidor Aplicações
Programas Ferramentas
Processadores de consultas
Geradores de relatório Extração de dados
AplicaçõesClientes
UsuáriosFinais
SGBDServidor
Dados
![Page 17: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/17.jpg)
Cliente-Servidor
Ceça Moraes17
![Page 18: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/18.jpg)
Cliente-Servidor
Ceça Moraes18
![Page 19: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/19.jpg)
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 Moraes19
![Page 20: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/20.jpg)
Cliente-Servidor 2 Camadas
Ceça Moraes20
![Page 21: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/21.jpg)
Cliente-Servidor 2 Camadas
Ceça Moraes21
![Page 22: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/22.jpg)
Ceça Moraes22
Cliente-Servidor 3 Camadas (Web)
Clientes
UsuáriosFinais
Aplicações AplicaçõesAplicações
WEBWEB
SGBDServidor
Dados
![Page 23: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/23.jpg)
Módulos do SGBD
Ceça Moraes23
![Page 24: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/24.jpg)
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 Moraes24
![Page 25: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/25.jpg)
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 Moraes25
![Page 26: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/26.jpg)
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 Moraes26
![Page 27: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/27.jpg)
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
![Page 28: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/28.jpg)
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 Moraes28
![Page 29: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/29.jpg)
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 Moraes29
![Page 30: Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo Os três níveis da arquitetura Mapeamentos Arquitetura cliente-servidor.](https://reader036.fdocumentos.tips/reader036/viewer/2022062404/552fc15e497959413d8e6184/html5/thumbnails/30.jpg)
Ceça Moraes30
Referências & Leitura
Navathe – Capítulo 2
Date – Capítulo 2