Banco de Dados II Prof. Antônio Cordeiro.

Slides:



Advertisements
Apresentações semelhantes
O Comando DROP INDEX Para eliminar um índice definido sobre uma tabela, utilize: Drop Index on ; Ex: No Access: Drop Index X on.
Advertisements

Banco de Dados Prof. Antonio.
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
Evolução dos SGBD’s (2ª Parte).
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
Funcionalidades de um SGBD
Introdução a Banco de Dados
Introdução a Banco de Dados Prof.: Bruno Rafael de Oliveira Rodrigues.
SISTEMAS DE INFORMAÇÃO
SISTEMAS DE INFORMAÇÃO Sistemas de Bancos de Dados I 2º Semestre – 2010 Pedro Antonio Galvão Junior Fone:
© Marcelo Bezerra de AlcântaraBanco de Dados II - Transação - 1 Disciplina Banco de Dados II Gerenciamento de transações Msc, Marcelo Bezerra de Alcântara.
Recuperação Como garantir a integridade da informação, em caso de avarias de HW ou SW forma de suportar a reposição de um estado consistente da informação.
1 LEIC, LBD 2002, Gabriel David, Ana Paiva, Luis Paulo Reis Geração da base de dados lógica n A ferramenta de transformação do modelo EA para o modelo.
Maurício Edgar Stivanello
Motor de Armazenamento
SGBD.
Sistema Gerenciador de Banco de Dados SGBD
Bacharelado em Ciência da Computação
Gerenciamento de Banco de Dados
Introdução aos Sistemas Gerenciadores de Banco de Dados
Sumário 1 SQL Embutida 2 Processamento de Consultas
Arquivos Seqüenciais Inhaúma Neves Ferraz
Iniciando Banco de Dados
Professora: Aline Vasconcelos
Conceitos Básicos Dado: fato do mundo real que está registrado e possui um significado implícito no contexto de um domínio de aplicação Exemplos: endereço,
Material III-Bimestre Wagner Santos C. de Jesus
Prof. Alexander Roberto Valdameri
Prof. Alexander Roberto Valdameri
Prof. Alexander Roberto Valdameri
Fundamentos de Banco de Dados Prof. Alexander Roberto Valdameri
Sistemas de Informação
Grupo 5: Fernando Lourenço Pinho Costa Rafael de Souza Santos
RECUPERAÇÃO APÓS FALHA
Administração de Sistemas de Informação Banco de Dados
Educação Profissional Técnica de Nível Médio em Informática
Sistemas Operacionais
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
Otimizador de consultas
BD.
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
Prof. Alessandro Gonçalves
Algoritmos de Processamento e Otimização de Consultas
Projeto de Banco de Dados
Controle Distribuído da Concorrência
Introdução a Banco de dados
Exercícios SGBD - CESPE
FaculdadePitágoras Curso Superior de Tecnologia: Banco de Dados Disciplina: Sistemas Gerenciadores de Banco de Dados Prof.: Fernando Hadad Zaidan.
Controle de concorrência
Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo  Os três níveis da arquitetura  Mapeamentos  Arquitetura cliente-servidor.
BD Distribuído Conceitos Iniciais.
Contexto da disciplina
Nome alunos 1 Título UC. Título – slide 2 Conteúdo Conteúdo 2.
Comandos SQL.
Banco de Dados Aplicado ao Desenvolvimento de Software
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Bancos de Dados Estrutura e Funcionamento de um SGBD
Sumário 1 SQL Embutida 2 Processamento de Consultas
Banco de Dados I Unidade 6 Processamento de Consultas Otimização Lógica.
Transações Banco de Dados II Aline S Costa 1. TRANSAÇÕES Conjunto de operações que formam uma única unidade lógica de trabalho; Conjunto de instruções.
UCSal – Bacharelado em Informática
UCSal – Bacharelado em Informática
Plano de Ensino Conceitos e Características Tipos de Banco de Dados
Banco de Dados Distribuídos Sílvia Cristina de Matos Soares
Modelos de dados.
Banco de Dados Parte 1 Profa. Ana Karina Barbosa Fevereiro/2008.
Fundamentos de Banco de Dados Prof. André Cypriano M. Costa
BANCO DE DADOS Prof. Marcelo West
Modelagem de Dados Aula 3.
Modelagem de Banco de Dados: Conceitos
Transcrição da apresentação:

Banco de Dados II Prof. Antônio Cordeiro

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Á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

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