Complementares - Sandra de Amo
Transcrição
Complementares - Sandra de Amo
Bacharelado em Ciência da Computação – UFU Disciplina GBC053 – Gerência de Banco de Dados Profa. Sandra de Amo Lista dos exercícios complementares – Preparação Prova 1 Exercício 1 Responda às seguintes perguntas: A. (*) (9.7) O que o gerenciador de buffer deve fazer para processar uma solicitação de leitura de uma página no disco ? O que acontece se a página solicitada estiver no buffer pool mas não tem pin_count igual a zero ? B. Quando um gerenciador de buffer grava uma página no disco ? C. (*) (9.9) O que significa que uma página está com pin_count maior do que zero no buffer pool ? Quem é responsável por incrementar o pin_count das páginas ? D. (*) (9.11) O que acontece se uma página for solicitada quando todas as páginas do buffer pool estiverem com seu dirty bit = 1 ? E. Descreva dois formatos de organização de registros de tamanho variável possíveis. Quais os prós e contras entre eles ? F. (*) (9.17) Descreva dois formatos de organização de páginas possíveis. Quais os prós e contras entre eles ? G. (*) (9.19) Considere as duas organizações internas de arquivos heap discutidas em sala de aula (usando listas de páginas e um diretório de páginas). a. Descreva-as brevemente e explique os prós e contras. Qual organização você escolheria se os registros fossem de tamanho variável ? b. Você pode sugerir um único formato de página para implementar ambas as organizações internas de arquivos ? H. Considere uma organização baseada em listas de páginas de um arquivo heap no qual duas listas são mantidas: uma lista de TODAS as páginas do arquivo e uma lista de TODAS as páginas com espaço livre. Em comparação, a organização baseada em listas discutidas em sala de aula considera uma lista de PÁGINAS CHEIAS e uma lista de páginas com espaço livre. a. Quais os prós e contras, se houver algum ? b. Alguma destas duas organizações é claramente superior ? Exercício 2. Responda às seguintes questões sobre arquivos e índices: A. O que é um indice em um arquivo de registros ? O que é uma chave de pesquisa para um índice ? Por que precisamos de índices ? B. Quais as alternativas estão disponíveis para as entradas de dados em um índice ? C. Qual a diferença entre um índice primário e um secundário ? O que é uma entrada de dados duplicada em um índice ? Um índice primário pode conter duplicatas ? D. Qual a diferença entre um índice agrupado e um não-agrupado ? Se um índice contiver registros de dados (completos, exatamente igual aos registros dos dados originais) como suas entradas de dados, ele pode ser agrupado ? E. Quantos índices agrupados você pode criar em um arquivo ? Exercicio 3. (*) (8.3) Considere uma relação armazenada como um arquivo com ordem aleatória de registros para o qual o único índice é um não-agrupado sobre um campo chamado Salario. Se você recuperar todos os registros com Salario > 20, usar o índice é sempre a melhor alternativa ? Explique. Exercicio 4. Considere a instância da relação Alunos mostrada na figura abaixo, ordenada pelo atributo Idade. Suponha que as tuplas estejam armazenadas em um arquivo ordenado na ordem mostrada; a primeira tupla está na página 1, a segunda também está na página 1 e assim por diante. Cada página pode armazenar até 3 registros de dados, de forma que a quarta tupla está na página 2. Explique o que as entradas de dados em cada um dos seguintes índices contém. Se a ordem das entradas for significativa, diga e explique o porquê. Se tal índice não puder ser criado, diga e explique o porquê. A. B. C. D. E. F. G. H. I. J. K. L. Um índice não agrupado sobre idade usando a Alternativa (1). Um índice não ão agrupado sobre idade usando a Alternativa (2). Um índice não agrupado sobre idade usando a Alternativa (3). Um índice agrupado sobre idade usando a Alternativa (1). Um índice agrupado sobre idade usando a Alternativa (2). Um índice agrupado sobre idade usando a Alternativa (3). Um índice não agrupado sobre média usando a Alternativa (1). Um índice não agrupado sobre média usando a Alternativa (2). Um índice não agrupado sobre média usando a Alternativa (3). Um índice agrupado sobre média usando a Alternativa (1). Um índice agrupado sobre média usando a Alternativa (2). Um índice agrupado sobre média usando a Alternativa (3). Exercício 5. Considere o índice ISAM da figura abaixo que usa a alternativa (2) para a entrada de dados. A. Cite todos os nós da árvore ISAM que devem ser trazidos para a memória (buffer pool) para responder à consulta: Obter todos os registros de DADOS com chave de busca maior do que 38. Qual o custo de I/O desta operação ? B. Insira um registro com chave de busca 109 no arquivo de dados, usando o indice ISAM. Descreva como é feita esta operação. Cite todos os nós da árvore ISAM que devem ser trazidos para a memória para realizar esta operação. Qual o custo de I/O desta operação ? C. Exclua o registro com chave de busca 81 no arquivo de dados (original, antes de ter sido realizada a operação do item B.) , usando o indice ISAM. Descreva como é feita esta operação. Cite todos os nós da árvore ISAM que devem ser trazidos para a memória para realizar esta operação. Qual o custo de I/O desta operação ? D. Qual o número mínimo de inserções necessárias para criar uma cadeia de 3 páginas de overflow ? Exercicio 6. (*) (10.3) Responda às seguintes questões: A. Qual a utilização mínima de espaço em um índice ISAM ? B. Se o seu sistema de banco de dados suportasse tanto um índice de árvore estático (ISAM) quanto um dinâmico (B-Tree), você consideraria o uso do índice estático preferencialmente em relação ao dinâmico ?