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

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

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

Apresentações semelhantes


Apresentação em tema: "Banco de Dados II Prof. Antônio Cordeiro. Arquitetura de um SGBD Bancos de Dados II - Prof. Antônio CordeiroSlide 2."— 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 CordeiroSlide 2

3 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) Conceitos e Terminologia Bancos de Dados II - Prof. Antônio CordeiroSlide 3

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

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

6 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 Conceitos e Terminologia Bancos de Dados II - Prof. Antônio CordeiroSlide 6

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

8 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 Conceitos e Terminologia Bancos de Dados II - Prof. Antônio CordeiroSlide 8

9 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. Benefícios do Uso de SGBDs Bancos de Dados II - Prof. Antônio CordeiroSlide 9

10 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. Benefícios do Uso de SGBDs Bancos de Dados II - Prof. Antônio CordeiroSlide 10

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

12 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. Arquitetura de um SGBD Bancos de Dados II - Prof. Antônio CordeiroSlide 12

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

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

15 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 Arquitetura de um SGBD Bancos de Dados II - Prof. Antônio CordeiroSlide 15

16 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 Arquitetura de um SGBD Bancos de Dados II - Prof. Antônio CordeiroSlide 16

17 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. Processamento de Consultas Bancos de Dados II - Prof. Antônio CordeiroSlide 17 Exame, analise e validação Otimização Geração do Plano Execução

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

19 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 CordeiroSlide 19 Processamento de Consultas

20 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 CordeiroSlide 20 Otimização de Consulta

21 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 CordeiroSlide 21 Otimização de Consulta

22 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 GERAÇÃO DE CÓDIGO DA CONSULTA Bancos de Dados II - Prof. Antônio CordeiroSlide 22

23 O Modelo Relacional Bancos de Dados II - Prof. Antônio CordeiroSlide 23 É 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 Execução

24 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 Otimização de Consulta Bancos de Dados II - Prof. Antônio CordeiroSlide 24

25 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. Passos da Otimização de Consultas Bancos de Dados II - Prof. Antônio CordeiroSlide 25

26 É 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. Árvore de Consulta Bancos de Dados II - Prof. Antônio CordeiroSlide 26

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


Carregar ppt "Banco de Dados II Prof. Antônio Cordeiro. Arquitetura de um SGBD Bancos de Dados II - Prof. Antônio CordeiroSlide 2."

Apresentações semelhantes


Anúncios Google