Upload
internet
View
129
Download
1
Embed Size (px)
Citation preview
Bancos de DadosEstrutura e Funcionamento de
um SGBD
Prof. Marcos R. Cardoso
Bancos de Dados – SGBDConceito
“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 - SGBDArquitetura
Níveis de um SGBD:•Nível Externo
•Nível Conceitual
•Nível Interno
Prof. Marcos R. Cardoso
Bancos de Dados - SGBDArquitetura
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 - SGBDArquitetura
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 - SGBDArquitetura
Nível Interno• Nível físico
• Esquema interno• Tipos de registro
• Índices
• Linguagem DDL Interna:
Prof. Marcos R. Cardoso
EMP_ARMAZENADO BYTES=20PREFIXO TYPE=BYTE(6),OFFSET=0EMP# TYPE=BYTE(6),OFFSET=6,INDEX=EMPXDEPTO# TYPE=BYTE(4),OFFSET=12PAGTO TYPE=FULLWORD,OFFSET=16
Bancos de Dados - SGBDArquitetura
Prof. Marcos R. Cardoso
NívelExterno
NívelConceitual
NívelInterno
Usuários finais, analistas,programadores
Programadores e DBA
DBA
Mapeamento
Mapeamento
SGBD
Bancos de Dados - SGBDArquitetura
Mapeamento externo/conceitual• a forma como o nível externo enxerga o
dado de acordo com o contextoMapeamento conceitual/interno
• caso haja mudanças na estrutura utilizada, deve haver uma sincronia entre os níveis
Prof. Marcos R. Cardoso
Bancos de Dados - SGBDArquitetura
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
SGBD
Bancos de Dados - SGBDArquitetura
Dicionário de Dados
BD
Usuário, Analistaou Programador
Dicionáriode Dados
DBA
2. Procura referência a estes dados.
1. Deseja acessar ou alterar dados.
3. Altera estrutura de uma tabela ou restrições de integridade.
4. Altera o dicionário conforme a mudança feita.
SGBD
Bancos de Dados - SGBDArquitetura
Dicionário de Dados
BD
Usuário
Dicionáriode Dados
3. Verifica direitos de acesso a estes dados
2. Aplicação solicita dados ao SGBD.
6. Mostra os dados formatados ao usuário.
1. Deseja consultar nome e endereço do funcionário matrícula 1452.
Aplicação
4. Acessa e retorna os dados no formato padrão.
5. Retorna os dados solicitados à aplicação.
Bancos de Dados - SGBDFuncionamento
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 – SGBDFuncionamento
Prof. Marcos R. Cardoso
Compiladorde Consultas
Usuário/aplicativo
Mecanismode Execução
Gerenciadorde Arquivos
Gerenciadorde Buffer
Gerenciadorde Armazenamento
Plano de consulta
Solicitações de dados
Comandos de páginas
Leitura/gravação
de páginas
Gerenciadorde Transações
Registro de Loge Recuperação
Compiladorde DDL
Controle deConcorrência
Tabela deBloqueioBuffer
DBA
BD
Bancos de Dados – SGBDFuncionamento
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 – SGBDFuncionamento
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 – SGBDFuncionamento
Funções básicas•Restrições de integridade
•Consistência no BD
•Estados possíveis
•Relacionamentos
Prof. Marcos R. Cardoso
SGBD
Bancos de Dados - SGBDArquitetura
Restrições de Integridade
BD
Usuário
Dicionáriode Dados
3. Verifica se usuário tem direito de exclusão.
Aplicação
1. Solicita exclusão de um departamento.
2. Lança ordem de exclusão ao SGBD.
4. Verifica restrição de integridade e valida ou não a exclusão.5. Retorna informação de sucesso
ou mensagem de erro.
6. Retorna informação ao usuário.
Bancos de Dados – SGBDFuncionamento
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
SGBD
BD
Bancos de Dados - SGBDArquitetura
Controle de Concorrência
Usuário 1
1. Efetua depósito em uma conta corrente.
Usuário 2
Controle deTransações
Controle deBloqueios
3. Efetua depósito na mesma conta corrente.
2. Inicia transação Usuário 1.
4. Inicia transação Usuário 2.
5. Bloqueia alteração Usuário 2.
6. Finaliza operação.
7. Finaliza transação Usuário 1.
9. Libera alteração Usuário 2.
8. Retorna informação.
10. Finaliza transação Usuário 2.11. Retorna informação.
Bancos de Dados – SGBDFuncionamento
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
SGBD
Bancos de Dados - SGBDArquitetura
Independência dos Dados
BD
Usuário, Analistaou Programador
DBA
1. Acessa SGBD.
2. Otimiza métodos de acesso a determinadas tabelas.
3. Continua acessando SGBD sem nenhuma interferência.
4. Inclui um novo campo em uma determinada tabela.
5. Em determinados casos, exige alteração nas aplicações, em outros casos, continua-se acessando o SGBD.