Beruflich Dokumente
Kultur Dokumente
Clase 16
Optimizacin de consultas
Costo de acceso a almacenamiento secundario buscar, leer y escribir bloques de datos que residen en disco. Costo de almacenamiento costo de almacenar archivos intermedio que genera una estrategia de ejecucin Costo de cmputo Costo de realizar operaciones Costo de comunicacin Costo de enviar la consulta y los resultados (si es un Sistema Distribuido)
IBD - CLASE 16 UNLP - Facultad de Informtica
Optimizacin de consultas
Interpretacin de consultas
Dada una consulta hay varios mtodos para llegar a la respuesta. Frmula de clculo
sistema
Usuario Consulta consulta depurada
Ms eficiente
IBD - CLASE 16
Optimizacin de consultas
Consulta forma interna proceso de optimizacin parser ms eficiente
eleccin de ndices
# de acceso a disco orden en el uso de tuplas
IBD - CLASE 16
Optimizacin de consultas
Optimizacin Lgica
Expresiones equivalentes: Algebra relacional: procedural, existe una secuencia de resolucin se puede encontrar una expresin ms eficiente que otra.
IBD - CLASE 16
Optimizacin de consultas
Operaciones
Seleccin:
hacerlas lo antes posible Cambiar condicin) Ejemplo
p1^p2(e)
p1(p2(e)) (descomponer la
Proyeccin
Resolver la proyeccin lo antes posible Ejemplo
Producto natural
(r1 |x| r2 |x| r3) = r1 |x| (r2 |x| r3)
6
IBD - CLASE 16 UNLP - Facultad de Informtica
Optimizacin de consultas
Otras operaciones (equivalencias) p(r1 r2) = p(r1) p(r2) p(r1 - r2) = p(r1) - p(r2) (r1 r2) r3 = r1 (r2 r3) r1 |x| r2 = r2 |x| r1
IBD - CLASE 16
Optimizacin de consultas
IBD - CLASE 16
Optimizacin de consultas
Seleccin: p (r)
# tuplas uniforme nr V(A,r) # bytes de la tupla sr se supone distribucin
IBD - CLASE 16
Optimizacin de consultas
Optimizacin Fsica -> depende del DBMS
Generar buenos ndices Costo de acceso por ndices ndice ms rpido, existe ordenamiento Costo adicional acceso al ndice
Clculo de tiempo
10
Optimizacin de consultas
Generar buenos clusters (criterios para agrupar informacin, para acceder menos al disco) de informacin -> se puede clusterizar por tablas, atributos o tuplas relacionadas
Procesadores paralelos Redes: separar el trabajo entre distintas computadoras
11
IBD - CLASE 16