Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso.

21
Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso

Transcript of Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso.

Page 1: Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso.

Bancos de DadosEstrutura e Funcionamento de

um SGBD

Prof. Marcos R. Cardoso

Page 2: Bancos de Dados Estrutura 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

Page 3: Bancos de Dados Estrutura e Funcionamento de um SGBD 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

Page 4: Bancos de Dados Estrutura e Funcionamento de um SGBD 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

Page 5: Bancos de Dados Estrutura e Funcionamento de um SGBD 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

Page 6: Bancos de Dados Estrutura e Funcionamento de um SGBD 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

Page 7: Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso.

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

Page 8: Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso.

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

Page 9: Bancos de Dados Estrutura e Funcionamento de um SGBD 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

Page 10: Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso.

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.

Page 11: Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso.

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.

Page 12: Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso.

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

Page 13: Bancos de Dados Estrutura e Funcionamento de um SGBD 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

Page 14: Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso.

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

Page 15: Bancos de Dados Estrutura e Funcionamento de um 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

Page 16: Bancos de Dados Estrutura e Funcionamento de um SGBD 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

Page 17: Bancos de Dados Estrutura e Funcionamento de um SGBD 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.

Page 18: Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso.

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

Page 19: Bancos de Dados Estrutura e Funcionamento de um SGBD 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.

Page 20: Bancos de Dados Estrutura e Funcionamento de um SGBD Prof. Marcos R. Cardoso.

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

Page 21: Bancos de Dados Estrutura e Funcionamento de um SGBD 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.