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

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

Otimização de Consultas em SQL Planos Alternativos AULA 24 Profa. Sandra de Amo GBC053 – BCC 2012-2.

Apresentações semelhantes


Apresentação em tema: "Otimização de Consultas em SQL Planos Alternativos AULA 24 Profa. Sandra de Amo GBC053 – BCC 2012-2."— Transcrição da apresentação:

1 Otimização de Consultas em SQL Planos Alternativos AULA 24 Profa. Sandra de Amo GBC053 – BCC

2 Planos Alternativos Transformar a expressão algébrica canônica (Π σ x ) em outra expressão equivalente. Utilizar algoritmos alternativos para implementar as operações algébricas

3 Exemplo R(sid,bid,day,rname) : RESERVA S(sid,sname,rating,age) : SAILORS B(bid,bname, color) : BOAT Quais os dias em que foram reservados barcos vermelhos ?

4 Plano 1 Select R.Day From R, B Where R.Bid = B.Bid AND B.Color = Vermelho σ color = vermelho RB Π Day

5 Plano 2 (otimizado) Select R.Day From R Where R.Bid IN ( Select B.Bid From B Where B.Color =Vermelho ) σ color = vermelho R Π Day B Π Bid

6 Equivalências de Expressões Algébricas Seleção σ c1 ^ c2 ^... ^ cn (R) = σ c1 (σ c2 (... (σ cn (R))...) Vantagens: Permite realizar uma única seleção, verificando todas as condições simultaneamente, em vez de se executar n seleções separadamente em sequência. σ c1 (σ c2 (R) ) = σ c2 (σ c1 (R) ) As condições podem ser executadas em qualquer ordem. Vantagem: executar a condição mais seletiva primeiro.

7 Equivalências de Expressões Algébricas Projeção Π X1 (R) = Π X1 (Π X2 (... (Π Xn (R))...) Onde cada X i é um conjunto de atributos X i está contido em X i+1 Exemplo: Π A (R) = Π A (Π AB (Π ABC (R))) Vantagem: Reduz o número de execuções do algoritmo de projeção

8 Equivalências de Expressões Algébricas Produto Cartesiano e Junção Associativa R (S T) = (R S) T Comutativa (R S) = (S R)

9 Exercicio Mostre que R (S T) = (T R) S Conclusão: A junção entre diversas relações pode ser feita em qualquer ordem. Propriedade importante na geração de planos alternativos.

10 Equivalências de Expressões Algébricas Seleção e Projeção Π X σ c (R) = σ c Π X (R) Onde todos os atributos aparecendo na condição c estão contidos em X Exercício: Mostrar que isto não é verdade caso existam atributos de c que não aparecem em X

11 Equivalências de Expressões Algébricas Seleção e Junção R S = σ c (R S) σ c (R S) = (σ c R S) se todos os atributos de c são atributos de R e não de S σ c (R S) = (σ c R S) se todos os atributos de c são atributos de R e não de S Vantagens: junção pode ser feita entre relações menores. c

12 Exercício Dê um exemplo para mostrar que as propriedades não são válidas caso c contenha atributos de ambas as relações R e S. R S R S A= R S σ B=b1 () R) σ B=b1 ( S A= R) σ B=b1 (

13 Exercícios Seja c = c1 ^c2 ^c3 c1 envolve atributos de R e S c2 envolve atributos somente de R c3 envolve atributos somente de S Mostre que: σ c (R S) = σ c1 (σ c2 R σ c3 S)

14 Equivalências de Expressões Algébricas Projeção e Produto Cartesiano Π X (R S) = (Π Y R Π Z S) Y = atributos de X que aparecem em R Z = atributos de X que aparecem em S Exemplo: Π AB (R S) = (Π A R Π B S) onde R(AC) e S(BC) Vantagem: Produto cartesiano pode ser feito entre relações menores.

15 Equivalências de Expressões Algébricas Projeção e Junção Π X (R S) = (Π Y R Π Z S) Y = atributos de X que aparecem em R Z = atributos de X que aparecem em S Os atributos envolvidos na condição de junção c devem aparecer em X Exemplo : R(ACD), S(BEC), X = {A, B, C}, condição de junção : R.C = S.C Π ABC (R S) = (Π A R Π B S) c c cc

16 Equivalências de Expressões Algébricas

17 Exercicio Mostre que a propriedade não é válida caso Y contenha atributos que não apareçam em X.

18 Exercicio Mostre que a propriedade não é válida caso a condição de junção c contenha atributos que não estão em X

19 Equivalências de Expressões Algébricas Distribuição Generalizada (Projeção e Junção) Π X (R S) = Π X (Π Y R Π Z S) Y = atributos de R que aparecem em X ou c Z = atributos de S que aparecem em Y ou c Exemplo : R(ACD), S(BEC), X = {A, B}, condição de junção : C = 3 Π AB (R S) = Π AB (Π AC R Π BC S) cc c c

20 Equivalências de Expressões Algébricas União, Intersecção: Associativa Comutativa Seleção e Projeção podem comutar com União, Intersecção e Diferença


Carregar ppt "Otimização de Consultas em SQL Planos Alternativos AULA 24 Profa. Sandra de Amo GBC053 – BCC 2012-2."

Apresentações semelhantes


Anúncios Google