Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porRafael Salvador Rivas Redondo Modificado hace 8 años
1
Administración de Base de Datos Procesamiento y Optimización de Consultas Prof Mercy Ospina Torres mercy.ospinat@gmail.com Prof Renny A. Hernandez renny.hernandez@ciens.ucv.ve
2
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Contenido Marzo 2012Administración de Base de Datos2 Cómo se procesa una consulta Traducir una consulta de SQL a AR – Repaso Algebra Relacional Árbol de ejecución – Árbol de ejecución lógico – Árbol de ejecución lineal izquierdo – Árbol canónico – Axiomas del Algebra relacional Técnicas para optimizar consultas – Basada en heurísticas – Basada en costos. Concurrencia
3
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Contenido Marzo 2012Administración de Base de Datos3 Modelo de costos – Factor de selectividad – Costo de los operadores del Algebra Relacional Select Project. Join Order Árbol de ejecución físico – Evaluar el árbol de ejecución físico. Materialización Encausamiento Concurrencia
4
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Introducción Una de las funciones más importantes de los sistemas de Base de datos en la consulta. Los SMBD relacionales usan como lenguaje de consulta SQL Para tener mayor control de la respuesta de una consulta del DBA debe conocer que hay detrás de esa instrucción en SQL Marzo 2012Administración de Base de Datos4 Consultas
5
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Conocimientos previos Para el manejo conocimientos de este tema el estudiante debe tener conocimientos de: – Lenguajes de consulta SQL y Algebra Relacional – Manejo de memoria en los SMBD – Diccionario de datos – Complejidad algorítmica – Probabilidad Marzo 2012Administración de Base de Datos5 Consultas
6
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Objetivos o competencias Al finalizar el tema el estudiante debe ser capaz de: – Traducir una consulta en SQL a una expresión del Algebra Relacional – Conocer que factores influyen en el rendimiento de una consulta – Conocer la importancia del diccionario de datos en el procesamiento de consultas – Optimizar una consulta usando técnicas heurísticas – Calcular el costo de una consulta – Conocer las utilidades del sistema manejador para consultas Marzo 2012Administración de Base de Datos6 Consultas
7
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Cómo procesar una consulta Marzo 2012Administración de Base de Datos7 SELECT Cuenta, Saldo FROM Cuenta WHERE Saldo >40.000 Procesamiento de consulta Consultas
8
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Cómo procesar una consulta Marzo 2012Administración de Base de Datos8 Consultas Consulta de alto nivel Analizador y traductor Expresión en Algebra Relacional Resultado de la consulta Diccionario de datos Optimi- zador Motor de evaluación Plan de ejecución Estadísticas de los datos Select * From R1 Where Cond Silberschatz, Korth, & Sudarshan, 2006 ρ Cond (R1) Búsqueda binaria Base de datos A1A2A3 xxyyzz xyyyxz
9
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Análisis Marzo 2012Administración de Base de Datos9 Análisis léxico: Identifica los elementos del lenguaje como por ejemplo, las palabras reservadas de SQL, si están bien formados los nombres de los atributos y relaciones en el texto de la consulta. Análisis sintáctico: Comprueba la sintaxis de la consulta de acuerdo a las reglas sintácticas del lenguaje de consulta. Validación: Comprueba que los nombres de las relaciones, atributos sean válidos semánticamente dentro del esquema de la base de datos sobre la cual se realiza la consulta y si los tipos de datos se están usando correctamente. Consultas Consulta de alto nivel Analizador y traductor Diccionario de datos
10
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Procesamiento de consulta Marzo 2012Administración de Base de Datos10 Traductor: Crea una representación interna de la consulta, mediante una estructura de árbol llamado árbol de consulta, el cual está basado en el álgebra relacional extendido Consultas Consulta de alto nivel Analizador y traductor Expresión en Algebra Relacional Diccionario de datos
11
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Procesamiento de consulta Marzo 2012Administración de Base de Datos11 Optimización: desarrolla una estrategia de ejecución para obtener el resultado de la consulta, evaluando cientos de estrategias distintas basadas en el álgebra relacional, y sus operadores físicos, escogiendo alguna de las estrategias menos costosa (plan de ejecución) Consultas Expresión en Algebra Relacional Optimi- zador Plan de ejecución Estadísticas de los datos Resultado de la consulta Motor de evaluación Base de datos
12
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Procesamiento de consulta Marzo 2012Administración de Base de Datos12 Motor de ejecución: recibe el plan de evaluación, lo ejecuta y devuelve la respuesta de la consulta. Consultas Expresión en Algebra Relacional Optimi- zador Plan de ejecución Estadísticas de los datos Resultado de la consulta Motor de evaluación Base de datos
13
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Algebra Relacional Marzo 2012Administración de Base de Datos13 Select From Where Operadores del Algebra Relacional Consultas Lenguaje de consulta de alto nivel Lenguaje de consulta de bajo nivel Proyección Selección Ordenación Unión Intersección Producto cartesiano Reunión Natural Resta División Unarios Binarios
14
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Algebra Relacional Marzo 2012Administración de Base de Datos14 PROYECCION – Define una vista que contiene un subconjunto vertical de R, extrayendo los valores de los atributos especificados y eliminando los duplicados. – Ejm: Select CI, Sueldo From Empleado Consultas CINombreSueldo 123Andrea Rojas1500 234Humberto Perez 2400 254Camilo Diaz1600
15
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Algebra Relacional Marzo 2012Administración de Base de Datos15 SELECCIÓN – Define una vista que contiene todas las tuplas de R que satisfacen la condición especificada. – Ejm: Consultas CINombreSueldo 123Andrea Rojas1500 234Humberto Perez 2400 254Camilo Diaz1600
16
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Algebra Relacional Marzo 2012Administración de Base de Datos16 SELECCIÓN – Define una vista que contiene todas las tuplas de R que satisfacen la condición especificada. – Ejm: Select * From Empleado Where Sueldo > 1500 Consultas CINombreSueldo 123Andrea Rojas1500 234Humberto Perez 2400 254Camilo Diaz1600
17
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Algebra Relacional Marzo 2012Administración de Base de Datos17 PRODUCTO CARTESIANO – Define una relación que es la concatenación de cada tupla de la relación R con cada tupla de la relación S. – R X S Consultas CICodB 1231 2341 2542 CodBDesc 1Malta 27 up
18
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Algebra Relacional Marzo 2012Administración de Base de Datos18 PRODUCTO CARTESIANO – Define una relación que es la concatenación de cada tupla de la relación R con cada tupla de la relación S. – R X S Select * From Cliente, Bebida Consultas CICodB 1231 2341 2542 CodBDesc 1Malta 27 up
19
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Algebra Relacional Marzo 2012Administración de Base de Datos19 PRODUCTO CARTESIANO – Define una relación que es la concatenación de cada tupla de la relación R con cada tupla de la relación S. – R X S Select * From Cliente, Bebida Consultas CICodB 1231 2341 2542 CodBDesc 1Malta 27 up R.CI R.CodBS.CodB Desc 12311Malta 23411Malta 25421Malta 123127 up 234127 up 254227 up
20
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Algebra Relacional Marzo 2012Administración de Base de Datos20 REUNION NATURAL (JOIN) – Es una combinación entre dos relaciones donde se verifica la condición de igualdad sobre los atributos comunes entre ambas relaciones. Del resultado se elimina una de las dos apariciones de cada atributo Select * From Cliente R, Bebida S WhereR.CodB=S.CodB Consultas CICodB 1231 2341 2542 CodBDesc 1Malta 27 up R.CI R.CodBS.CodB Desc 12311Malta 23411Malta 25421Malta 123127 up 234127 up 254227 up
21
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Algebra Relacional Marzo 2012Administración de Base de Datos21 REUNION NATURAL (JOIN) – Es una combinación entre dos relaciones donde se verifica la condición de igualdad sobre los atributos comunes entre ambas relaciones. Del resultado se elimina una de las dos apariciones de cada atributo Select * From Cliente R, Bebida S WhereR.CodB=S.CodB Consultas CICodB 1231 2341 2542 CodBDesc 1Malta 27 up CICodBDesc 1231Malta 2341Malta 25427 up
22
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Árbol de ejecución Marzo 2012Administración de Base de Datos22 Representa una consulta en algebra relacional Es un árbol de orden 2 – Cada nodo interno representa una tabla vista o resultado intermedio producido por una operación – Cada hoja representa una tabla base P1 y P2 sub arboles Op operador AR Consultas Case Base T Case Inductivo Op P1P2 Op P1
23
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Árbol de ejecución Marzo 2012Administración de Base de Datos23 Ejemplo Π Apellido1, Nombre, Sueldo (σ Sueldo > c ( Empleado Departamento )) Consultas Empleado Departa mento T1 <-(Empleado Departamento) Ejecutamos de adentro hacia afuera
24
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Árbol de ejecución Marzo 2012Administración de Base de Datos24 Ejemplo Π Apellido1, Nombre, Sueldo (σ Sueldo > c ( Empleado Departamento )) Consultas Empleado Departa mento σ Sueldo > c T1 <-(Empleado Departamento) T2 c (T1)
25
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Árbol de ejecución Marzo 2012Administración de Base de Datos25 Ejemplo Π Apellido1, Nombre, Sueldo (σ Sueldo > c ( Empleado Departamento )) Consultas Empleado Departa mento Π Apellido1, Nombre, Sueldo σ Sueldo > c T1 <-(Empleado Departamento) Tr <- Π Apellido1, Nombre, Sueldo (T2) T2 c (T1)
26
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Árbol lineal izquierdo Marzo 2012Administración de Base de Datos Es un árbol de ejecución donde en cada nodo binario el hijo derecho es una tabla Arbol canónico: Es un árbol lineal izquierdo donde cada nodo binario corresponde a un producto cartesiano, la selección es sobre toda la condición y la proyección sobre todos los atributos Nota: es el mas rápido de construir pero el más costoso Consultas
27
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Árbol lineal izquierdo Marzo 2012Administración de Base de Datos Es un árbol de ejecución donde en cada nodo binario el hijo derecho es una tabla Arbol canónico: Es un árbol lineal izquierdo donde cada nodo binario corresponde a un producto cartesiano, la selección es sobre toda la condición y la proyección sobre todos los atributos Nota: es el mas rápido de construir pero el más costoso Consultas SELECT FROM T1, T2, … Tn WHERE
28
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Árbol lineal izquierdo Marzo 2012Administración de Base de Datos Es un árbol de ejecución donde en cada nodo binario el hijo derecho es una tabla Arbol canónico: Es un árbol lineal izquierdo donde cada nodo binario corresponde a un producto cartesiano, la selección es sobre toda la condición y la proyección sobre todos los atributos Nota: es el mas rápido de construir pero el más costoso Consultas SELECT FROM T1, T2, … Tn WHERE
29
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Árbol lineal izquierdo Marzo 2012Administración de Base de Datos Es un árbol de ejecución donde en cada nodo binario el hijo derecho es una tabla Arbol canónico: Es un árbol lineal izquierdo donde cada nodo binario corresponde a un producto cartesiano, la selección es sobre toda la condición y la proyección sobre todos los atributos Nota: es el mas rápido de construir pero el más costoso Consultas SELECT FROM T1, T2, … Tn WHERE
30
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Árbol lineal izquierdo Marzo 2012Administración de Base de Datos Ejercicios Construya el árbol canónico de las sig. consultas SELECT CI, Nombre, CodMateria FROM Estudiante E, inscripcion I WHERE I.CodM = ‘6311’ and semestre=‘2-2011’ and E.CI = I.CI SELECT E.CI, E.Nombre, M.Nombre, I.semestre FROM Estudiante E, Inscripcion I, Materia M WHERE I.CodM = ‘6311’ and I.semestre=‘2-2011’ and E.CI = I.CI and M.CodM = I.CodM Consultas
31
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Ejercicio 1 Marzo 2012Administración de Base de Datos31 SELECT CI, Nombre, CodMateria FROM Estudiante E, inscripcion I WHERE I.CodM = ‘6311’ and semestre=‘2-2011’ and E.CI = I.CI Consultas EI X
32
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Ejercicio 2 Marzo 2012Administración de Base de Datos32 Realícelo usted Consultas
33
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Expresiones equivalentes Marzo 2012Administración de Base de Datos Una expresión en un algebra es equivalente a otra, si el resultado es el mismo. Consultas
34
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Expresiones equivalente Marzo 2012Administración de Base de Datos Una expresión del AR es equivalente a otra, si el resultado es el mismo. Sin embargo una expresión equivalente puede ser mas eficiente que otra en tiempo de respuesta. Para hallar expresiones equivalentes se usan reglas o axiomas, los cuales vienen del algebra de conjuntos Consultas
35
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Axiomas del Algebra Relacional Marzo 2012Administración de Base de Datos 1.Cascada de selecciones 2.Conmutatividad de la selección 3.Cascada de proyecciones 4.Distributividad de la proyección y la selección 5.Conmutatividad del Join y el Producto Cartesiano 6.Distributividad de la selección con respecto al Join y al producto cartesiano 7.Distributividad de la proyección con respecto al Join y al producto cartesiano Consultas
36
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Axiomas del Algebra Relacional Marzo 2012Administración de Base de Datos 8. Conmutatividad de la unión y la intersección 9. Asociatividad de la union, la intersección, y el producto cartesiano 10. Distributividad de la selección con respecto a la Unión y la Intersección 11. Distributividad de la proyección con respecto a la Unión y la Intersección 12. Conversión del Producto Cartesiano en Join Consultas
37
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Axiomas del Algebra Relacional Marzo 2012Administración de Base de Datos 1.Cascada de selecciones Donde c1, c2, … cn son condiciones booleanas Consultas CICodB 1231 2341 1232 CICodB 1231 2341 CICodB 1231 CICodB 1231
38
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Axiomas del Algebra Relacional Marzo 2012Administración de Base de Datos 1.Cascada de selecciones Donde c1, c2, … cn son condiciones booleanas Consultas σ c1 and c2 and c3 σ c3 σ c2 σ c1
39
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Axiomas del Algebra Relacional Marzo 2012Administración de Base de Datos Consultas CICodB 1231 2341 1232 CICodB 1231 2341 CICodB 1231 CICodB 1231 2 CICodB 1231
40
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Axiomas del Algebra Relacional Marzo 2012Administración de Base de Datos 2. Conmutatividad de la selección Consultas σ c2 σ c1 σ c2
41
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Axiomas del Algebra Relacional Marzo 2012Administración de Base de Datos Consultas CICodBDesc 1231Malta 2341Malta 25427 up CICodB 1231 2341 2542 CI 123 234 254 3. Cascada de proyecciones
42
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Axiomas del Algebra Relacional Marzo 2012Administración de Base de Datos 3. Cascada de proyecciones Consultas ∏ A1 ∏ A1..An - 1 ∏ A1..A n ∏ A1
43
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Axiomas del Algebra Relacional Marzo 2012Administración de Base de Datos Consultas CICodB 1231 2341 1232 CICodB 1231 2341 CodB 1 1 4. Distributividad de la proyección y la selección
44
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Axiomas del Algebra Relacional Marzo 2012Administración de Base de Datos Consultas CICodB 1231 2341 1232 CICodB 1231 2341 CodB 1 1 1 1 1 1 2 4. Distributividad de la proyección y la selección
45
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Axiomas del Algebra Relacional Marzo 2012Administración de Base de Datos 4. Distributividad de la proyección y la selección Consultas ∏ A1..An σ c ∏ A1..An
46
El DBA Concurrencia Diccionario Datos Integridad Seguridad Proc. Consultas El SMBD Manejo de Memoria Restauración Próxima clase Marzo 2012Administración de Base de Datos Próxima clase Transformación del árbol canónico (Axiomas del Algebra Relacional) Continuación Técnicas de optimización Factor de Selectividad Costos de los operadores Consultas
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.