Gerenciamento de Arquivos, Páginas e Registros

Slides:



Advertisements
Apresentações semelhantes
Aula T-09 – BCC202 Listas (Parte 1) Túlio Toffolo www. decom. ufop
Advertisements

Software Básico Silvio Fernandes
Motivação para listas duplamente encadeadas e circulares
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 06: Funções.
AULA 8 Profa. Sandra de Amo GBC053 – BCC
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Exatas e Naturais Ciência da Computação Aula.
TADS – Tipos Abstratos de Dados
Indice estruturado por Hash
RESUMO DA AULA 5 Profa. Sandra de Amo GBC053 – BCC
Cálculos de Custos I/O-Arquivos Hash Introdução aos Métodos de Acesso
Indices estruturados por B-TREE
Gerenciamento de Arquivos, Páginas e Registros RESUMO DA AULA 3 Profa. Sandra de Amo GBC053 – BCC
Gerenciamento de Disco e de Buffer - Resumo
Organização de Arquivos Introdução RESUMO DA AULA 4 Profa. Sandra de Amo GBC053 – BCC
Organização de Arquivos Introdução
Gerenciamento do Disco Gerenciamento do Buffer
Algoritmos para Seleção Simples AULA 16 Profa. Sandra de Amo GBC053 – BCC
Estimativas de Custos: Arquivos Heap, Ordenados e Hashed Indices e Métodos de Acesso AULA 13 Profa. Sandra de Amo Programa de Pós-graduação em Ciência.
Organização de Arquivos Tipos de Indices Cálculo de Custos de I/O
AULA 10 Profa. Sandra de Amo GBC053 – BCC
Algoritmos para Seleção com Condições Gerais AULA 17 Profa. Sandra de Amo GBC053 – BCC
Algoritmos para Seleção e Projeção
Algoritmos para Seleção Simples
AULA 23 Profa. Sandra de Amo GBC053 – BCC
Introdução aos Métodos de Acesso AULA 7 – Parte II Profa. Sandra de Amo GBC053 – BCC
Algoritmos para Projeção e Operações de Conjuntos AULA 22 Profa. Sandra de Amo GBC053 – BCC
B-tree Gerenciamento de Duplicatas Bulk Loading AULA 12 Profa. Sandra de Amo GBC053 – BCC
Método de Acesso Dinâmico - B-Tree AULA 14 Profa. Sandra de Amo Programa de Pós-Graduação em CC - UFU Sistemas de Banco de Dados
Método de Acesso Dinâmico: B-Tree - Deleção Chaves de busca sem duplicatas AULA 9 Profa. Sandra de Amo GBC053 – BCC
Revisão Prova 2 Métodos de Acesso: BTree e Hash AULA 20 Profa. Sandra de Amo GBC053 – BCC
Série de Exercícios.
1 Complexidade de Algoritmos Complexidade de pior caso Complexidade de melhor caso de uso bem menos freqüente em algumas situações específicas Complexidade.
Árvores.
Arquivos Extensíveis.
Estruturas de Dados e Algoritmos
Listas Ligadas – Conceitos Avançados
Indexação e Hashing Muitas consultas referenciam apenas uma pequena porção dos registros em uma tabela. Portanto necessitamos ser capaz de localizar estes.
Capítulo 6 Sistemas de Arquivos 6.1 Arquivos 6.2 Diretórios
Estruturas de Dados I Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Estruturas de Dados I Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Estruturas de Dados II Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Auditoria de Segurança da Informação
1 Aula 7 ImplementandoSubprogramas Universidade do Vale do Rio dos Sinos
Robson Godoi / Sandra Siebra
Lista Encadeada Circular Lista Duplamente Encadeada
Listas Encadeadas.
Apontadores ou Ponteiros
Algoritmos e Estruturas de Dados
© 2011 Pearson Prentice Hall. Todos os direitos reservados.slide 1 © 2011 Pearson Prentice Hall. Todos os direitos reservados.slide 1 © 2011 Pearson Prentice.
Sistemas Operacionais
INF70 – Gerenciamento de Banco de Dados 2 Índices baseados em Hash Ilmério Reis da Silva UFU/FACOM/BCC.
Cálculo de Custos de I/O Heap Files AULA 4 Profa. Sandra de Amo Gerenciamento de Banco de Dados – BCC.
Arquivos Estruturados por Ordenação– Custos I/O AULA 5 Profa. Sandra de Amo GBC053 – BCC.
Estruturas de Dados com Jogos
Indices: Estruturas Auxiliares para Otimizar Acesso aos Dados
Lista Encadeada Circular Lista Duplamente Encadeada
Estruturas de Dados com Jogos
SISTEMAS OPERACIONAIS
Ordenação Externa de Arquivos – Um exemplo
Revisão Prova 2 Métodos de Acesso – Parte 2 AULA 21 Profa. Sandra de Amo GBC053 – BCC.
Arquivos Estruturados por Hashing– Custos I/O
Introdução e Busca Cega
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Estruturas de Dados Aula 9: Listas (parte 1)
Ceça Moraes – Introdução à Programação SI1
Listas Simplesmente Encadeadas
AULA 21 Profa. Sandra de Amo BCC - UFU
Sistemas de Arquivos Sistemas Operacionais Profa. Priscila Facciolli
MySQL STORAGE & TRANSACTIONs Pedro da Silva. Índice 1. Storage 1.1. Tabelas MyISAM 1.1. Tabelas MyISAM 1.2 Tabelas InnoDB 1.2 Tabelas InnoDB 2. Transactions.
Gerenciamento do Disco Gerenciamento do Buffer
Transcrição da apresentação:

Gerenciamento de Arquivos, Páginas e Registros AULA 3 Profa. Sandra de Amo Gerenciamento de Banco de Dados – BCC

Estudaremos nesta aula: Como localizar páginas em um arquivo ? Como localizar registros em uma página ? Como localizar campos em um registro ? 3/25/2017

ORDEM DOS ASSUNTOS TRATADOS ARQUIVO Página Registro 3/25/2017

Heap Files Heap Files: Dados não são ordenados Dados são organizados sequencialmente a medida que são inseridos. Obter todos os dados do arquivo  varrer registro por registro a partir do primeiro. Operações Create, destroy files Insert, delete, get a record Scan all records 3/25/2017

Gerenciar as páginas no heap file Como encontrar determinada página ? Que página possui espaço livre? Método 1: Lista ligada de páginas Método 2: Diretório de páginas 3/25/2017

Lista Ligada de Páginas Arquivo EndPag1 Alunos 1033 Hospital 5023 Tabela Arquivos- End 1a página Páginas contendo Espaço Livre Header Page Páginas Cheias 1a página do arquivo 3/25/2017

Inserção de novos registros Gerenciador de arquivos Procura na lista de páginas com espaço livre onde cabe o novo registro Caso não encontre: aloca nova página na lista das páginas com espaço livre e insere o registro Caso a página onde o registro tenha sido inserido fique cheia, insere esta página na lista de páginas cheias e atualiza lista de páginas livres 3/25/2017

Deleção de páginas Caso a deleção de um registro de uma página resulte em uma página vazia: Caso 1: Página onde estava o registro deletado estava na lista de páginas com espaço vago Gerenciador de arquivos é acionado Página é retirada da lista de páginas vazias: ponteiros que apontavam para ela e que saiam dela são reajustados. Caso 2: Página onde estava o registro deletado estava na lista de páginas cheias Página é retirada da lista de páginas cheias: ponteiros que apontavam para ela e que saiam dela são reajustados. 3/25/2017

Desvantagens Maioria das páginas estão na lista das páginas contendo espaço vazio Registros de tamanho variável Toda página contém alguns bytes de espaço livre Inserção de registro requer examinar diversas páginas para encontrar espaço suficiente 3/25/2017

Diretório de Páginas Tabela Arquivos- End 1a páginaDP Header Page Endpg1DP Alunos 1033 Hospital 5023 Tabela Arquivos- End 1a páginaDP Diretório de Páginas = Lista Ligada 10 40 35 Pg Dados 1 Pg Dados 2 Pg Dados N Header Page Espaço Livre da Página 1 3/25/2017

Estudaremos nesta aula: Como localizar páginas em um arquivo ? Como localizar registros em uma página ? Como localizar campos em um registro ? 3/25/2017 11 11

Como os registros são organizados nas páginas rid = identificador do registro (record id) registro rid 2 50 Número do slot Identificador da página Página = coleção de slots Slot = espaço físico preenchido por um registro 3/25/2017

Como registros são organizados Registros de Tamanho Fixo : 1a alternativa Registros armazenados nos primeiros N slots N = número de registros Armazenamento consecutivo Quando um registro é deletado : o último registro passa a ocupar o slot liberado Localização do i-ésimo registro = soma de offsets Inserção de um novo registro = após o último slot ocupado. Todos os slots vazios aparecem juntos no final da página Problema : se há referência externa ao registro (Ex: solicita-se a localização do rid (3,2)) rid do registro contém o número do slot Como slot muda, o rid também muda 3/25/2017

Como registros são organizados: 1a alternativa Slot 1 Slot 2 Slot 3 Slot N Espaço livre N Número de registros Informações sobre a página : Número da página, ponteiro para próxima página,… 3/25/2017

Como registros são organizados (2ª alternativa) Registros de Tamanho Fixo : 2a alternativa Slot 1 Espaço livre Slot 2 Slot 3 Slot M 1 1 1 M Número de Slots Info sobre página 1 2 3 M 3/25/2017

Como registros são organizados Registros de Tamanho Variável Não se pode dividir a página num número fixo de slots Quando um novo registro é inserido Encontrar slot vazio onde o registro cabe exatamente Quando um registro é deletado Mover registros para preencher o « buraco » criado. Todo o espaço livre deve ser contíguo. 3/25/2017

Como registros são organizados A fim de poder mover registros na página de tal modo que seu número de slot não modifique : Cria-se um diretório de slots Neste diretório, a cada slot está associado um ponteiro e o tamanho do registro. Caso o registro mude de lugar, apenas o ponteiro do slot correspondente muda no diretório de slots. 3/25/2017

Diretório de Slots da Página Ponteiro para o início do espaço livre na página 1035 200 Número de slots no diretório (P1, T1) 1 Pi = ponteiro para o registro 1 (P2, T2) 2 Ti = tamanho do registro 1 (P200, T200) 200 Rid = (np, i) Ti 3/25/2017

Bacharelado em Ciência da Computação - 2004 Organização da Página Área de dados Página i rid = (i,N) rid = (i,1) rid = (i,2) Comprimento = 24 Espaço Livre Diretório de slots 20 16 24 N N 2 1 3/25/2017 Bacharelado em Ciência da Computação - 2004

Bacharelado em Ciência da Computação - 2004 Deleção de Registros Registro rid = (5, 3) com tamanho 50 é deletado Entrada 3 no diretório de slots Outros registros são reorganizados Registro (5,4) muda de lugar – seu número de slot 4 não muda ! Entrada 4 no diretório de slot muda = (Newpointer4,T4) Entrada inicial do diretório = novo ponteiro para espaço livre Número de slots no diretório = igual ao anterior. (-1,_) Slot 3 está vago 3/25/2017 Bacharelado em Ciência da Computação - 2004

Inserção de Registros Registro R inserido no início do espaço livre O endereço E onde será inserido R é obtido no diretório de slots Diretório de slots é atualizado: Procura-se no diretório de slots por alguma entrada (-1,x) Caso encontre : modifica-se esta entrada (E, tamanho do registro R) Caso não encontre : acrescenta um novo slot N+1 = (E, tamanho do registro R) Atualiza endereço do início do espaço livre no diretório de slots 3/25/2017

Estudaremos nesta aula: Como localizar páginas em um arquivo ? Como localizar registros em uma página ? Como localizar campos em um registro ? 3/25/2017 22 22

Formatos de Registros Processador de consultas «vê » os dados como coleção de registros. Catálogo do sistema armazena: Número de campos, tamanho dos campos, tipos dos campos Tamanho fixo Número de campos fixo Cada campo tem o mesmo comprimento em todos os registros. Tamanho variável Número de campos é fixo Alguns campos podem ter tamanhos variáveis em diferentes registros. Cada registro guarda seu rid (Np, Nslot). 3/25/2017

Como localizar um campo em um registro de tamanho fixo O tamanho do campo Ci é o mesmo em todos os registros C1 C2 C3 C4 L1 L2 L3 L4 B= endereço do registro Endereço = B + L1 + L2 Ci = campo i Li = Comprimento do campo i 3/25/2017

Como localizar um campo em um registro de tamanho variável 1a alternativa C1 $ C2 $ C3 $ C4 $ 2a alternativa Registro C1 C2 C3 C4 Endereço do final do registro 3/25/2017

Vantagens e Desvantagens 2a alternativa é melhor: Acesso direto a cada campo Maneira clara de se tratar valores nulos – endereços de início e fim são iguais Também pode tratar registros de tamanho fixo 3/25/2017

Como são modificados os campos Modificação de um campo : Shift nos campos subsequentes Campo modificado pode não caber na página Rid do registro = (Np, Nslot) 3/25/2017

Como são modificados os campos Registro inteiro pode não caber numa página registro é quebrado em registros menores Cada subregistro tem um ponteiro para o subregistro subsequente subregistro Ponteiro para o próximo subregistro 3/25/2017