Documente Academic
Documente Profesional
Documente Cultură
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.
5.
P
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
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|
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)
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
Ejemplo: SELECT LNAME FROM EMPLOYEE, WORKS_ON, PROJECT WHERE PNAME=Aquarius AND PNUMBER=PNO AND ESSN=SSN AND BDATE>1957-12-31
Base de Datos
LNAME(C1 C2 C3 C4(E X W X P)
Base de Datos
Base de Datos