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

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

Organização de Arquivos Tipos de Indices Cálculo de Custos de I/O

Apresentações semelhantes


Apresentação em tema: "Organização de Arquivos Tipos de Indices Cálculo de Custos de I/O"— Transcrição da apresentação:

1 Organização de Arquivos Tipos de Indices Cálculo de Custos de I/O
AULA 5 Profa. Sandra de Amo GBC053 – BCC 2013-1

2 Parte I : Indices Densos, Primários, Compostos,...

3 Indices Densos Densos : se para cada valor v da chave de busca existe uma entrada (v,rid). Não-denso = esparso

4 Exemplo de Indices denso e não denso
André, 44, 2000 30 Carlos, 44, 2000 31 André Ilmério, 40, 3500 35 José João, 35, 3000 35 Rodrigo José, 40, 2500 35 Maria, 30, 4000 40 Pedro, 35, 2000 40 Rodrigo, 40, 3500 40 Sabrina, 31, 5000 44 Sara, 35, 4000 44 Indice Esparso e Agrupado Indice Denso e não-agrupado Registros de dados

5 Vantagens e desvantagens
Esparso tem que ser agrupado Vantagens de esparso : arquivo de indice ocupa menor espaço. Desvantagem de esparso : técnicas de otimização de busca são apropriadas para indices densos.

6 Indices Primários e Secundários
Primários : Chave do índice inclue a chave primária da relação. Não há entradas duplicadas (com mesmo valor da chave) Secundários : Não contém chave primária. Pode conter chave candidata Pode conter duplicatas ou não

7 Indices com chaves compostas
Indice em (Idade,Sal) Indice em Idade 31,80 31 33,75 33 42,10 bob 42 10 42 42,20 cal 31 80 42 joe 42 20 sue 33 75 Indice em Sal 10,42 10 20,42 20 75,33 75 80,31 80 Indice em (Sal,Idade)

8 Consultas Consultas com igualdade Consultas Range Idade = 10, Sal = 80
Chave composta (Idade, Sal) Idade = 10, Sal = 80 Arquivos Hashed só são convenientes para consultas com igualdade Consultas Range Idade = 10 Idade < 10, Sal > 80 Arquivos Ordenados são convenientes para consultas com igualdade

9 Indices em SQL CREATE INDEX IndAgeGrau ON Estudantes
With Structure = BTREE, Key = (Idade, Média)

10 Parte II : Cálculo de Custos de I/O Heap Files

11 Modelo de Custo Hipóteses B = Número de Páginas
R = Número de registros por página D = Tempo médio para ler ou escrever uma página no disco ± 25 msec C = Tempo médio para processar um registro ± 1 a 10 microsec Custo = número de acessos ao disco 25/03/2017 11 11

12 Operações em Arquivos Scan : ler todos os registros de um arquivo
Páginas devem localizadas no disco e serem carregadas no Buffer Pool Registros devem ser localizados nas páginas Busca com seleção = Páginas com os registros selecionados devem ser localizadas e carregadas Busca com seleção > ou < 25/03/2017

13 Operações Inserção Deleção
Identificar a página na qual registro deve ser inserido Carregar esta página no buffer pool Incluir novo registro Escrever a página modificada no disco Deleção Identificar a página contendo o registro Modificar a página 25/03/2017

14 Lembrando... Ler = localizar no disco + carregar
B = Número de Páginas R = Número de registros por página D = Tempo médio para ler ou escrever uma página no disco Ler = localizar no disco + carregar Escrever = localizar posição no disco + transferir dados para o disco C = Tempo médio para processar um registro no buffer 25/03/2017

15 Heap Files Scan Cada página deve ser lida
Processar R registros por página Custo = B(D+RC) 25/03/2017

16 Heap Files Procura (Sel « = « na chave) Custo = 0.5B(D + RC)
Atenção: Chave primária ou candidata da tabela !! Encontrou, pára ! Em média, metade do arquivo deve ser escaneado para se encontrar a página correspondente ao registro. Carregar a página Escanear a página à procura do registro Custo = 0.5B(D + RC) 25/03/2017

17 Heap Files Procura (Sel « = « não-chave) Procura (Sel <) Inserção
Todo o arquivo deve ser escaneado Tempo = B(D+RC) Procura (Sel <) Inserção Registros são inseridos sempre no final do arquivo Página final deve ser carregada, modificada e escrita de volta no disco Tempo = 2D + C 25/03/2017

18 Heap Files Deleção de um registro Encontrar a página do registro
Remover o registro da página Escrever a página modificada Tempo = Sel + D + C Tempo para alterar o registro Tempo de localizar o registro e trazer a página correspondente para o buffer pool. Tempo para escrever a página no disco 25/03/2017

19 Resumo – Heap Files Scan Sel = Sel <> Insert Delete sel BD 0.5BD
chave Nchave Sel <> Insert Delete sel B(RC+D) 0.5 B(D+RC) 2D+C Sel + + D + C BD 0.5BD 2D Sel+D 25/03/2017


Carregar ppt "Organização de Arquivos Tipos de Indices Cálculo de Custos de I/O"

Apresentações semelhantes


Anúncios Google