Bacharelado em Ciência da Computação – UFU Disciplina GBC053 – Gerência de Banco de Dados Profa. Sandra de Amo Exercício – AULA 25 Exercicio 1. Suponha as seguintes informações armazenadas sobre as tabelas R(A,B,C) e S(A,D,E) no catálogo: NTuples (R) = 100000 NPages(R) = 1000 Ntuples(S) = 50.000 Npages(S) = 500 Suponha que existam dois índices já criados na tabela R: I e H. O índice I é do tipo B-‐Tree, com chave A e o índice H é hash sobre o atributo B. As seguintes estatísticas estão armazenadas no momento no catálogo referentes a estes índices: NKeys(I) = 20 Nkeys (H) = 10 INPages(I) = 200 INPages (H) = 50 IHeight(I) = 4 ILow(I) = 10 IHigh(I) = 250 Calcule o tamanho das respostas das seguintes consultas: a) SELECT * FROM R WHERE R.A = 10 b) SELECT * FROM R WHERE R.A = 10 AND R.B = 30 c) SELECT * FROM R WHERE R.A = 10 OR R.B = 30 d) SELECT * FROM R,S WHERE R.A = S.A AND R.C = 10 e) SELECT * FROM R,S WHERE R.A = S.A OR R.C = 10 f) SELECT S.D, S.E FROM R , S WHERE R.A = S.A AND R.C = 10 Exercicio 2. Suponha uma relação R(A,B,C) com 100 tuplas, sendo que o valor do atributo A varia de 1 a 98. As tabelas abaixo descrevem para cada valor do atributo A (coluna à esquerda) o número de tuplas de R possuindo este valor do atributo A (coluna à direita). Vlr N.Tup Vlr N.Tup 1 3 58 2 4 10 60 7 6 4 63 3 10 3 65 4 22 8 76 3 31 9 78 7 35 2 80 2 43 5 84 4 47 7 93 3 53 8 98 6 Pede-‐se: 1. Descrever uma distribuição uniforme para estes dados. 2. Fazer um histograma por largura . 3. Estimar o número de tuplas com valores > 30, supondo uma distribuição uniforme 4. Estimar o número de tuplas com valores > 30, supondo uma distribuição de acordo com o histograma por largura. Exercício 3. Considere os mesmos dados do exercício anterior. Pede-‐se: 1. Fazer um histograma por profundidade . 2. Estimar o número de tuplas com valores > 30, supondo uma distribuição de acordo com o histograma por largura. 3. Qual a melhor estimativa ? Exercicio 4. Considere os mesmos dados do exercicios anterior. 1. Suponha que o SGBD mantenha um histograma comprimido, mantendo um contador para os valores mais frequentes que são 4 e 31, e utilizando um histograma em profundidade para os demais valores. Fazer o histograma em profundidade, neste caso. 2. Estimar o número de tuplas com valores > 30, supondo os contadores para os valores 4 e 31 e o historgrama por profundidade feito no item anterior. 3. Compare o resultado com as estimativas dos exercicios anteriores e diga qual seria a melhor estimativa a seu ver.