A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Banco de Dados II Prof. Antônio Cordeiro.

Apresentações semelhantes


Apresentação em tema: "Banco de Dados II Prof. Antônio Cordeiro."— Transcrição da apresentação:

1 Banco de Dados II Prof. Antônio Cordeiro

2 Arquitetura de um SGBD Bancos de Dados II - Prof. Antônio Cordeiro
Slide 2

3 Conceitos e Terminologia
Sistema Gerenciador de Banco de Dados (SGBD): software para criar, manter e consultar um BD. SGBDs Relacionais: implementam esquemas de BD segundo o modelo relacional (esquemas relacionais) Bancos de Dados II - Prof. Antônio Cordeiro Slide 3

4 Conceitos e Terminologia
O Modelo Relacional Modelo Relacional Tabelas Operações sobre Tabelas Transformação de esquemas OO em esquemas relacionais Bancos de Dados II - Prof. Antônio Cordeiro Slide 4

5 Conceitos e Terminologia
SGBDs Objeto-Relacionais Implementam esquemas de BD segundo o modelo objeto-relacional (esquemas objeto-relacionais) Bancos de Dados II - Prof. Antônio Cordeiro Slide 5

6 Conceitos e Terminologia
Modelo Objeto-Relacional Object Tables Operações sobre Object Tables Transformação de esquemas OO em esquemas objeto-relacionais Esquemas OO são mais próximos do mundo real que os esquemas relacionais Bancos de Dados II - Prof. Antônio Cordeiro Slide 6

7 Conceitos e Terminologia
Esquemas OO são também chamados de Esquemas Conceituais Esquemas Relacionais e Objeto-Relacionais são também chamados de Esquemas Lógicos Bancos de Dados II - Prof. Antônio Cordeiro Slide 7

8 Conceitos e Terminologia
Esquema Físico Descreve a implementação, pelo SGBD, de um esquema lógico Projeto de BD Criação de um Esquema OO Transformação do Esquema OO em um Esquema Lógico Criação do Esquema Físico Bancos de Dados II - Prof. Antônio Cordeiro Slide 8

9 Benefícios do Uso de SGBDs
Independência Lógica de Dados Alteração de um esquema lógico não implica necessariamente em alteração dos programas que acessam o BD. Independência Física de Dados Alteração de um esquema físico não implica em alteração dos programas que acessam o BD. Bancos de Dados II - Prof. Antônio Cordeiro Slide 9

10 Benefícios do Uso de SGBDs
Suporte transacional - ACID; Atomicidade: a transação é processada ou cancelada como um todo. Tolerância a falhas Consistência: gravação correta do dado independente da situação. Isolamento: independência de contexto; Durabilidade:consistência de informações após o processamento da transação. Bancos de Dados II - Prof. Antônio Cordeiro Slide 10

11 Modificações no Esquema
Arquitetura de um SGBD Modificações no Esquema Consultas Atualizações Processador de Consultas Gerente de Memória Dados&Metadados de Transações Bancos de Dados II - Prof. Antônio Cordeiro Slide 11

12 Arquitetura de um SGBD Gerente de Memória
Localiza os arquivos em disco, através do Gerente de Arquivos, e transfere para os buffers os blocos de dados solicitados pelo Gerente de Buffers. O Gerente de Buffers escolhe páginas da memória principal onde armazenar os blocos. Se as páginas contêm outros blocos, os novos blocos substituem os antigos. Bancos de Dados II - Prof. Antônio Cordeiro Slide 12

13 Arquitetura de um SGBD Gerente de Transações
Garante a atomicidade e o isolamento dos programas que modificam esquemas, ou consultam, ou atualizam o banco de dados Bancos de Dados II - Prof. Antônio Cordeiro Slide 13

14 Processador de Consultas
Arquitetura de um SGBD Processador de Consultas Clientes(Identidade, Nome, Endereço) Contas(Número, Saldo, Identidade) Encontrar os saldos de todas as contas de Maria José Bancos de Dados II - Prof. Antônio Cordeiro Slide 14

15 Processador de Consultas
Arquitetura de um SGBD Processador de Consultas Possíveis Planos de Realização da Consulta Examinar todos os registros de Clientes, procurando por Maria José. Para cada Maria José, encontrar todos os registros de Contas com a identidade de Maria José Se houver um índice p/ nome de cliente, localizar, via o índice, os registros de Maria José. O restante é como o plano anterior Bancos de Dados II - Prof. Antônio Cordeiro Slide 15

16 Processador de Consultas
Arquitetura de um SGBD Processador de Consultas Decide qual dos possíveis planos de execução da Consulta é melhor Exemplo : Um plano que explora a existência de dois índices: para nome de cliente, e para identidade de proprietário de conta O Processador de consultas escolherá o melhor plano de execução Bancos de Dados II - Prof. Antônio Cordeiro Slide 16

17 Processamento de Consultas
Processador de Consultas As consultas (querys) são especificadas em linguagens de alto nível. O SGBD precisa converter estes comandos em algoritmos capazes de recuperar as informações desejadas. Fases do processo. Exame, analise e validação Otimização Geração do Plano Execução Bancos de Dados II - Prof. Antônio Cordeiro Slide 17

18 Processamento de Consultas
Esquema de Processamento Query Parser and Translator Relational Algebra expression Otimizer Execution plan Statistics Abaout data Evolution Engine Out Put Data Bancos de Dados II - Prof. Antônio Cordeiro Slide 18

19 Processamento de Consultas
Fase de Exame, Análise e Validação Realiza a validação sintática e semântica do comando Efetua a validação dos nomes de colunas e tabelas acessadas Traduz a consulta em uma representação interna (árvore de consulta) geralmente definida por meio de uma expressão da álgebra relacional. A estrutura a ser otimizada é a árvore de consulta Bancos de Dados II - Prof. Antônio Cordeiro Slide 19

20 Otimização de Consulta
Os blocos de consulta (select básico) são as unidade básicas de tradução Cada bloco é traduzido para depois ser otimizado Select cod_cli, nom_cli from clientes σ sls-medio > par (Clientes) where sdl-medio = ( select avg(sld-medio) from clientes Par <- AVG sld-medio ( where uf = ‘BA’ ) σ UF=‘BA’ (Clientes)) Bancos de Dados II - Prof. Antônio Cordeiro Slide 20

21 Otimização de Consulta
Consiste basicamente na escolha do melhor algoritmo possível para executar uma dada consulta Deve ser definida a melhor estratégia de execução possível para recuperar o resultado da consulta a partir das estruturas de dados disponíveis. Resumidamente, é do otimizador a tarefa de definir o plano de execução da consulta. Bancos de Dados II - Prof. Antônio Cordeiro Slide 21

22 GERAÇÃO DE CÓDIGO DA CONSULTA
Basicamente tem a função de gerar o código que será executado na recuperação da consulta. Diante do plano definido pelo Otimizador, o código da consulta deve ser gerado com base em algoritmos previamente definidos para cada tipo de acesso presente no plano de execução Bancos de Dados II - Prof. Antônio Cordeiro Slide 22

23 Execução O Modelo Relacional É uma tarefa realizada pelo processador run-time do Banco de Dados. O Processador executa o código definido pelo gerador, acessando dados em disco e gerenciando a memória necessária. É nesta fase que a consulta é realmente processada Bancos de Dados II - Prof. Antônio Cordeiro Slide 23

24 Otimização de Consulta
Para uma mesma consulta, pode existir mais que um plano de execução possível. A tarefa do otimizador é escolher aquela que recupere os dados a um menor custo. Cada operador pode ser executado, e por conseguinte, avaliado utilizando vários algoritmos com custos de consultas diferentes. A diferença entre os custos de execução de dois planos pode ser significativa Bancos de Dados II - Prof. Antônio Cordeiro Slide 24

25 Passos da Otimização de Consultas
A partir de regras que transformam uma expressão relacional em outra equivalente, gerar as várias expressões que sejam logicamente iguais. Anotar as várias expressões resultantes com as alternativas de planos de acessos. Escolher entre os várias planos gerados, aquele que represente o menos custo. Bancos de Dados II - Prof. Antônio Cordeiro Slide 25

26 Árvore de Consulta É uma estrutura de dados em forma de árvore que corresponde a uma expressão da álgebra relacional. Cada nó descendente representa uma entrada para os operadores relacionais posicionados nos nós internos. O resultado de um operador em um nó mais interno serve de entrada para o operador no nó interno pai. A execução ocorre sempre dos nós folha para a raiz. Bancos de Dados II - Prof. Antônio Cordeiro Slide 26

27 Exemplo de Árvore de Consulta
Л Nome_aluno | X | | X | alunos σ Cod_disc =‘SIBDIIA’ σ media > 8 Históricos Disciplinas Bancos de Dados II - Prof. Antônio Cordeiro Slide 27


Carregar ppt "Banco de Dados II Prof. Antônio Cordeiro."

Apresentações semelhantes


Anúncios Google