Sunteți pe pagina 1din 5

Universidad Nacional de La Matanza

Base de Datos

Reglas de transformacin de expresiones Reglas generales de transformacin 1. Una secuencia de restricciones sobre una relacin A puede transformarse en una sola restriccin

(
C1

C2

(A ))

C1 AND C2

(A )

2. En una secuencia de proyecciones contra una relacin A pueden ignorarse todas, salvo la ltima (si cada atributo mencionado en la ltima, tambin aparece en las dems)

(
P2

P1

(A )) (A ),
P2

sii P2 P1

3. Una restriccin de una proyeccin puede transformarse en una proyeccin de una restriccin

( (A )) ( (A ))
C P P C

Es una buena idea hacer restriccin antes que proyeccin, pues la restriccin reduce el tamao de la entrada para la proyeccin(el nmero de filas que considerar)

4.

C (RS) (C (R)) (C (S))


donde

es distributivo respecto de la UNIN, INTERSECCIN y DIFERENCIA


{ , , }

5.
P

(RS) ( (R)) ( (S))


P P

es distributivo respecto de la UNIN

6.

nump=2(EMPLEADO|X|nss=nsseTRABAJA_EN) EMPLEADO|x|nss=nsse(nump=2(TRABAJA_EN))

es distributivo respecto de JOIN si la condicin de seleccin c... contiene atributos que slo pertenecen a una relacin

c(R1|X|JR2) (c1(R1))|X|J (c2(R2))

o puede escribirse como (c1 AND c2), y en c1 slo intervienen atributos de R1 y en c2 slo hay atributos de R2 se reduce el nmero de tuplas examinadas
en la siguiente operacin en secuencia: join (as, esa operacin ser ms rpida y tambin producir menos tuplas)

7. es distributivo respecto de JOIN si en la condicin de reunin J slo intervienen atributos incluidos en la lista de proyeccin P

P(R1|X|

R2) (P_R1 (R1)) |X|J (P_R2 (R2))

sii P= (P_R1 UNION P_R2) y P incluye todo atributo de reunin que aparece en J

se reduce el n de columnas que tratar en la siguiente operacin en secuencia: join (por tanto, esa operacin necesitar menos tiempo para su ejecucin y producir menos columnas)

Autor: Ing. Vernica Ichazo

Universidad Nacional de La Matanza


Conmutatividad

Base de Datos

Sea un operador binario, es conmutativo si A B = B A , A,B 8. En lgebra Relacional, son conmutativas: UNIN, INTERSECCIN y JOIN y no conmutativas: DIFERENCIA y DIVISIN
Asociatividad

Sea un operador binario, es asociativo si A (BC)= (AB) C , A,B,C 9. En lgebra Relacional, son asociativas: UNIN, INTERSECCIN y JOIN y no asociativas: DIFERENCIA y DIVISIN Idempotencia Sea un operador binario, es idempotente si A A = A, A

10. En lgebra relacional, son idempotentes : UNIN, INTERSECCIN y JOIN y no idempotentes: DIFERENCIA y DIVISIN

Reglas heursticas Algunas buenas heursticas que pueden ser aplicadas durante el procesamiento de consultas:

tan pronto como sea posible 2. Ejecutar primero las restricciones ms restrictivas (las que producen
1. Ejecutar operaciones de restriccin menor n de tuplas) 3. Combinar un producto cartesiano X con una restriccin subsiguiente cuya condicin represente una condicin de reunin, convirtindolas en un join |X| 4. Ejecutar las operaciones de proyeccin

tan pronto como sea posible

Ejemplo: SELECT LNAME FROM EMPLOYEE, WORKS_ON, PROJECT WHERE PNAME=Aquarius AND PNUMBER=PNO AND ESSN=SSN AND BDATE>1957-12-31

LNAME(PNAME=Aquarius PNUMBER=PNO ESSN=SSN BDATE>1957-12-31(EMPLOYEE X WORKS_ON X PROJECT))= LNAME(C1 C2 C3 C4(E X W X P)


C1 = PNAME=Aquarius C2= PNUMBER=PNO C3= ESSN=SSN C4= BDATE>1957-12-31

Autor: Ing. Vernica Ichazo

Universidad Nacional de La Matanza


E= EMPLOYEE W= WORKS_ON P= PROJECT

Base de Datos

LNAME(C1 C2 C3 C4(E X W X P)

Autor: Ing. Vernica Ichazo

Universidad Nacional de La Matanza

Base de Datos

LNAME(C2 (C3 (C4 (E) X W ) X C1 (P)))

LNAME(C3 (C2 (C1 (P) X W ) X C4 (E)))

Autor: Ing. Vernica Ichazo

Universidad Nacional de La Matanza

Base de Datos

LNAME( (C1 (P)|X|c2 W ) |X|c3 (C4 (E)))

Autor: Ing. Vernica Ichazo

S-ar putea să vă placă și