Bancos de Dados
Estrutura e Funcionamento
de um SGBD
Prof. Marcos R. Cardoso
Bancos de Dados – SGBD
Conceito

“Um sistema cujo objetivo principal é
gerenciar o acesso e a correta
manutenção dos dados
armazenados em um banco de
dados.”
Prof. Marcos R. Cardoso
Bancos de Dados - SGBD
Arquitetura
 Níveis
de um SGBD:
• Nível Externo
• Nível Conceitual
• Nível Interno
Prof. Marcos R. Cardoso
Bancos de Dados - SGBD
Arquitetura

Nível Externo
• Nível lógico do usuário
• Linguagem de manipulação
• Alto Nível de Abstração
• Utilização de L4Gs
Prof. Marcos R. Cardoso
Bancos de Dados - SGBD
Arquitetura
 Nível
Conceitual
• Nível Intermediário
• Nível lógico comunitário
• Médio nível de abstração
• Visão do todo do DB
Prof. Marcos R. Cardoso
Bancos de Dados - SGBD
Arquitetura

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
Prof. Marcos R. Cardoso
Bancos de Dados - SGBD
Arquitetura
Nível
Externo
Usuários finais, analistas,
programadores
Mapeamento
Nível
Conceitual
Programadores e DBA
Mapeamento
Nível
Interno
DBA
Prof. Marcos R. Cardoso
S
G
B
D
Bancos de Dados - SGBD
Arquitetura

Mapeamento externo/conceitual
• a forma como o nível externo enxerga o
dado de acordo com o contexto

Mapeamento conceitual/interno
• caso haja mudanças na estrutura
utilizada, deve haver uma sincronia
entre os níveis
Prof. Marcos R. Cardoso
Bancos de Dados - SGBD
Arquitetura

Dicionário de dados
• Cátalogo do SGBD – metadados (dados
•
•
•
•
sobre dados)
Estrutura do esquema
Integridade (restrição/autorização)
Configurações e parâmetros do SGBD
Estimativas de acesso sobre os dados
armazenados
Bancos de Dados - SGBD
Arquitetura

Dicionário de Dados
1. Deseja acessar ou
alterar dados.
Usuário, Analista
ou Programador
SGBD
4. Altera o
dicionário
conforme a
mudança feita.
DBA
3. Altera estrutura de uma tabela
ou restrições de integridade.
2. Procura
referência a
estes dados.
BD
Dicionário
de Dados
Bancos de Dados - SGBD
Arquitetura

Dicionário de Dados
1. Deseja consultar nome
e endereço do funcionário
matrícula 1452.
Usuário
SGBD
4. Acessa e retorna
os dados no formato
padrão.
6. Mostra os dados
formatados ao usuário.
2. Aplicação solicita dados
ao SGBD.
Aplicação
5. Retorna os dados
solicitados à aplicação.
3. Verifica direitos
de acesso a estes
dados
BD
Dicionário
de Dados
Bancos de Dados - SGBD
Funcionamento

Usuário solicita dados
• SGBD recebe e valida o pedido
• SGBD percorre os níveis e mapeamento para
•

obter os dados solicitados
SGBD retorna os dados solicitados
Usuário recebe e visualiza os dados
solicitados
Prof. Marcos R. Cardoso
Bancos de Dados – SGBD
Funcionamento
DBA
Usuário/aplicativo
Compilador
de Consultas
Gerenciador
de Transações
Compilador
de DDL
Registro de Log
e Recuperação
Controle de
Concorrência
Buffer
Tabela de
Bloqueio
Plano de consulta
Mecanismo
de Execução
Solicitações de dados
Gerenciador
de Arquivos
Comandos de páginas
Gerenciador
de Buffer
Leitura/
gravação
de páginas
Gerenciador
de Armazenamento
Prof. Marcos R. Cardoso
BD
Bancos de Dados – SGBD
Funcionamento

Comunicação com usuário
• Troca de mensagens em ambos os
sentidos
• Gerenciador autônomo de comunicação
de dados
• Sincronizado com o SGBD
Prof. Marcos R. Cardoso
Bancos de Dados – SGBD
Funcionamento
 Funções
básicas
• Método de acesso
• DDL – definição de dados,
processadas através de um
compilador
• DML – manipulação dos dados,
otimizadas e executadas também
através de um compilador
Prof. Marcos R. Cardoso
Bancos de Dados – SGBD
Funcionamento
 Funções
básicas
• Restrições de integridade
• Consistência no BD
• Estados possíveis
• Relacionamentos
Prof. Marcos R. Cardoso
Bancos de Dados - SGBD
Arquitetura

Restrições de Integridade
1. Solicita exclusão
de um departamento.
Usuário
6. Retorna informação ao usuário.
5. Retorna informação de sucesso
ou mensagem de erro.
Aplicação
2. Lança ordem de
exclusão ao SGBD.
SGBD
BD
3. Verifica se usuário
tem direito de exclusão.
4. Verifica restrição
de integridade e
valida ou não a
exclusão.
Dicionário
de Dados
Bancos de Dados – SGBD
Funcionamento
 Funções
básicas
• Segurança
• Autorização de acesso
• Recuperação de falhas
• Controle de concorrência
• Evitar conflito de acesso
• Estratégias de bloqueio (lock)
Prof. Marcos R. Cardoso
Bancos de Dados - SGBD
Arquitetura

Controle de Concorrência
1. Efetua depósito em uma
conta corrente.
Usuário 1
6. Finaliza operação.
8. Retorna informação.
3. Efetua depósito na mesma
conta corrente.
Usuário 2
11. Retorna informação.
5. Bloqueia alteração Usuário 2.
2. Inicia transação Usuário 1.
SGBD
4. Inicia transação Usuário 2.
9. Libera
alteração
Usuário 2.
7. Finaliza transação Usuário 1.
BD
Controle de
Transações
Controle de
Bloqueios
10. Finaliza transação Usuário 2.
Bancos de Dados – SGBD
Funcionamento

Independência dos dados –
transparência para o nível externo
• Independência Física – imunidade das
•
aplicações a alterações na técnica de acesso
Independência Lógica – imunidade das
aplicações a alterações na estrutura lógica do
BD (nível conceitual)
Prof. Marcos R. Cardoso
Bancos de Dados - SGBD
Arquitetura

Independência dos Dados
1. Acessa SGBD.
3. Continua acessando SGBD
sem nenhuma interferência.
Usuário, Analista
ou Programador
5. Em determinados casos, exige
alteração nas aplicações, em outros
casos, continua-se acessando o SGBD.
DBA
2. Otimiza métodos de acesso a
determinadas tabelas.
SGBD
BD
4. Inclui um novo campo em uma
determinada tabela.
Download

SGBD