SlideShare una empresa de Scribd logo
1 de 76
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
Contenido

     El DBA         • Cómo se procesa una consulta
    El SMBD
                    • Traducir una consulta de SQL a AR
                      – Repaso Algebra Relacional
Manejo de Memoria
                    • Árbol de ejecución
  Restauración
                      –   Árbol de ejecución lógico
 Concurrencia
 Concurrencia         –   Árbol de ejecución lineal izquierdo
Diccionario Datos     –   Árbol canónico
 Proc. Consultas
                      –   Axiomas del Algebra relacional

   Integridad
                    • Técnicas para optimizar consultas
                      – Basada en heurísticas
   Seguridad
                      – Basada en costos.


     Marzo 2012                 Administración de Base de Datos           2
Contenido

     El DBA         • Modelo de costos
                      – Factor de selectividad
    El SMBD
                      – Costo de los operadores del Algebra Relacional
Manejo de Memoria
                         •   Select
  Restauración           •   Project.
                         •   Join
 Concurrencia
 Concurrencia
                         •   Order
Diccionario Datos        •   Árbol de ejecución físico
 Proc. Consultas      – Evaluar el árbol de ejecución físico.
                         • Materialización
   Integridad
                         • Encausamiento
   Seguridad




     Marzo 2012                 Administración de Base de Datos           3
Cómo procesar una consulta

     El DBA

    El SMBD

Manejo de Memoria SELECT Cuenta, Saldo
                                                   Procesamiento
                    FROM Cuenta
                    WHERE Saldo >40.000             de consulta
 Restauración


  Concurrencia

Diccionario Datos

Proc. Consultas
   Consultas

   Integridad

   Seguridad




     Marzo 2012                     Administración de Base de Datos   4
Cómo procesar una consulta

                                                                                             ρCond (R1)
     El DBA
                         Consulta                    Analizador              Expresión
    El SMBD
                          de alto                        y                   en Algebra
                           nivel                     traductor               Relacional
Manejo de Memoria


  Restauración      Select *
                    From R1                                                     Optimi-
                    Where Cond                  Diccionario de datos             zador
  Concurrencia
                                                                                          Estadísticas de
Diccionario Datos                                                                            los datos
                              Resultado
 Proc. Consultas
    Consultas                    de la
                                                      Motor de                 Plan de
                                                     evaluación               ejecución
                               consulta
   Integridad
                                                                                             Búsqueda
                    A1   A2   A3                                                              binaria
   Seguridad
                    xx   yy   zz
                    xy   yy   xz                 Base de datos
                                                                  Silberschatz, Korth, & Sudarshan, 2006

     Marzo 2012                       Administración de Base de Datos                                 5
Análisis

     El DBA
                        Consulta                    Analizador
    El SMBD
                         de alto                        y
                          nivel                     traductor
Manejo de Memoria


  Restauración                     Diccionario de datos


  Concurrencia      •   Análisis léxico: Identifica los elementos del lenguaje como
                        por ejemplo, las palabras reservadas de SQL, si están bien
Diccionario Datos
                        formados los nombres de los atributos y relaciones en el texto
 Proc. Consultas
                        de la consulta.
    Consultas
                    •   Análisis sintáctico: Comprueba la sintaxis de la consulta de
   Integridad           acuerdo a las reglas sintácticas del lenguaje de consulta.
   Seguridad        •   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.
     Marzo 2012                      Administración de Base de Datos                   6
Procesamiento de consulta

     El DBA
                        Consulta                  Analizador         Expresión
    El SMBD
                         de alto                      y              en Algebra
                          nivel                   traductor          Relacional
Manejo de Memoria


  Restauración

                                             Diccionario de datos
  Concurrencia

Diccionario Datos

 Proc. Consultas
    Consultas       •   Traductor: Crea una representación interna de la consulta,
                        mediante una estructura de árbol llamado árbol de consulta,
   Integridad           el cual está basado en el álgebra relacional extendido
   Seguridad




     Marzo 2012                    Administración de Base de Datos                7
Procesamiento de consulta

     El DBA
                           Expresión
                           en Algebra                 Optimi-
                                                       zador
    El SMBD                Relacional
                                                                          Estadísticas de
Manejo de Memoria                                                            los datos

                           Resultado
                                                    Motor de          Plan de
  Restauración                de la
                                                   evaluación        ejecución
                            consulta
  Concurrencia

                                Base de datos
Diccionario Datos

 Proc. Consultas
    Consultas       •   Optimización: desarrolla una estrategia de ejecución para
                        obtener el resultado de la consulta, evaluando cientos de
   Integridad           estrategias distintas basadas en el álgebra relacional, y sus
                        operadores físicos, escogiendo alguna de las estrategias
   Seguridad            menos costosa (plan de ejecución)
                    •   Motor de ejecución: recibe el plan de evaluación, lo ejecuta y
                        devuelve la respuesta de la consulta.
     Marzo 2012                    Administración de Base de Datos                          8
Algebra Relacional

                    Select <lista de atributos>
     El DBA                                                 Lenguaje de consulta
                    From <lista de tablas>                      de alto nivel
    El SMBD
                    Where <condiciones>
Manejo de Memoria


  Restauración              Operadores del Algebra Relacional
  Concurrencia                   • Proyección
                      Unarios    • Selección                       Lenguaje de consulta
Diccionario Datos                • Ordenación
                                                                       de bajo nivel
 Proc. Consultas
    Consultas                    •   Unión
                                 •   Intersección
   Integridad         Binarios   •   Producto cartesiano
                                 •   Reunión Natural
   Seguridad                     •   Resta
                                 •   División


     Marzo 2012                  Administración de Base de Datos                      9
Algebra Relacional

                    • PROYECCION
     El DBA
                       – Define una vista que contiene un subconjunto vertical de R,
    El SMBD              extrayendo los valores de los atributos especificados y
                         eliminando los duplicados.
Manejo de Memoria      – Ejm: T 1                  ( Empleado )
                                                CI , Sueldo
  Restauración


  Concurrencia      Select <lista de atributos>               CI    Nombre         Sueldo
                                                              123   Andrea Rojas   1500
Diccionario Datos   From <lista de tablas>
                                                              234   Humberto       2400
 Proc. Consultas    Where <condiciones>                             Perez
    Consultas
                                                              254   Camilo Diaz    1600
   Integridad

   Seguridad




     Marzo 2012                  Administración de Base de Datos                            10
Algebra Relacional

                    • SELECCIÓN
     El DBA
                       – Define una vista que contiene todas las tuplas de R que
    El SMBD              satisfacen la condición especificada.
                       – Ejm:
Manejo de Memoria               T1                            ( Empleado )
                                              Sueldo   1500

  Restauración
                    Select <lista de atributos>
  Concurrencia                                                CI    Nombre         Sueldo
                    From <lista de tablas>
                                                              123   Andrea Rojas   1500
Diccionario Datos
                    Where <condiciones>                       234   Humberto       2400
 Proc. Consultas
    Consultas                                                       Perez
                                                              254   Camilo Diaz    1600
   Integridad

   Seguridad




     Marzo 2012                  Administración de Base de Datos                            11
Algebra Relacional

                    • PRODUCTO CARTESIANO
     El DBA
                       – Define una relación que es la concatenación de cada tupla
    El SMBD              de la relación R con cada tupla de la relación S.
                       – RXS
Manejo de Memoria
                                                        CI         CodB        CodB    Desc
  Restauración                                          123        1           1       Malta
                    Select <lista de atributos>
                                                        234        1           2       7 up
  Concurrencia
                    From <lista de tablas>              254 2R.CodB
Diccionario Datos
                                                        R.CI               S.CodB     Desc
                    Where <condiciones>
                                                         123           1   1          Malta
 Proc. Consultas
    Consultas                                            234           1   1          Malta
   Integridad                                            254           2   1          Malta

   Seguridad
                                                         123           1   2          7 up
                                                         234           1   2          7 up
                                                         254           2   2          7 up
     Marzo 2012                  Administración de Base de Datos                              12
Algebra Relacional

                    • REUNION NATURAL (JOIN)
     El DBA
                       – Es una combinación entre dos relaciones donde se verifica
    El SMBD              la condición de igualdad sobre los atributos comunes entre
                         ambas relaciones. Del resultado se elimina una de las dos
Manejo de Memoria        apariciones de cada atributo

  Restauración                                            CI       CodB         CodB    Desc
                                                          123      1            1       Malta
  Concurrencia
                    Select <lista de atributos>           234      1         2          7 up
Diccionario Datos
                                                         R.CI      R.CodB   S.CodB     Desc
                    From <lista de tablas>                254      2
                                                         123       1        1          Malta
 Proc. Consultas
    Consultas       Where <condiciones> and              234       1        1          Malta
   Integridad         T1.a1=t2.a1 and ….                 254       2        1          Malta

   Seguridad
                                                         123       1        2          7 up
                                                         234       1        2          7 up
                                                         254       2        2          7 up
     Marzo 2012                  Administración de Base de Datos                               13
Algebra Relacional

                    • REUNION NATURAL (JOIN)
     El DBA
                       – Es una combinación entre dos relaciones donde se verifica
    El SMBD              la condición de igualdad sobre los atributos comunes entre
                         ambas relaciones. Del resultado se elimina una de las dos
Manejo de Memoria        apariciones de cada atributo

  Restauración                                            CI       CodB       CodB    Desc
                                                          123      1          1       Malta
  Concurrencia
                    Select <lista de atributos>           234      1          2       7 up
Diccionario Datos
                    From <lista de tablas>                254      2
 Proc. Consultas
    Consultas       Where <condiciones> and
                                                             CI        CodB   Desc
   Integridad         T1.a1=t2.a1 and ….
                                                             123       1      Malta
   Seguridad                                                 234       1      Malta
                                                             254       2      7 up

     Marzo 2012                  Administración de Base de Datos                             14
Árbol de ejecución

                    • Representa una consulta en algebra
     El DBA
                      relacional
    El SMBD         • Es un árbol de orden 2
Manejo de Memoria      – Cada nodo interno representa una tabla vista o
                         resultado intermedio producido por una operación
  Restauración
                       – Cada hoja representa una tabla base
  Concurrencia
                     Case Base                       Case Inductivo
Diccionario Datos
                                                                , ,    Op
 Proc. Consultas          T                                Op
    Consultas                                                    , X
                                                                  ,-          O
   Integridad

   Seguridad        P1 y P2 sub arboles                                  P1
                                                      P1           P2
                    Op operador AR

     Marzo 2012                  Administración de Base de Datos                  15
Árbol de ejecución
                    • Ejemplo
     El DBA
                       Π Apellido1, Nombre, Sueldo (σ           Sueldo > c   (Empleado
    El SMBD              Departamento))
Manejo de Memoria                                                             Π   Apellido1, Nombre,
                                                                                      Sueldo
  Restauración
                    T1 <-(Empleado             Departamento)
  Concurrencia                                                                    σ   Sueldo > c
                    T2 <- σ   Sueldo > c   (T1)
Diccionario Datos
                    Tr <- Π   Apellido1, Nombre, Sueldo   (T2)
 Proc. Consultas
    Consultas

   Integridad

   Seguridad                                                                                   Departa
                                                                       Empleado
                                                                                                mento


     Marzo 2012                      Administración de Base de Datos                                     16
Árbol lineal izquierdo

                    • Es un árbol de ejecución donde en cada nodo
     El DBA
                      binario el hijo derecho es una tabla
    El SMBD

Manejo de Memoria   • Arbol canónico: Es un árbol lineal izquierdo
                      donde cada nodo binario corresponde a un
  Restauración
                      producto cartesiano, la selección es sobre toda la
  Concurrencia        condición y la proyección sobre todos los atributos
Diccionario Datos
                     SELECT <Lista Atributos>
 Proc. Consultas     FROM T1, T2, … Tn
    Consultas
                     WHERE <Condición>
   Integridad
                    Nota: es el mas rápido de
   Seguridad
                    construir pero el más costoso

     Marzo 2012                  Administración de Base de Datos
Árbol lineal izquierdo

                    Ejercicios
     El DBA
                    Construya el árbol canónico de las sig. consultas
    El SMBD
                       SELECT CI, Nombre, CodMateria
Manejo de Memoria
                       FROM Estudiante E, inscripcion I
                       WHERE I.CodM = ‘6311’ and semestre=‘2-2011’ and E.CI =
  Restauración
                         I.CI
  Concurrencia
                       SELECT E.CI, E.Nombre, M.Nombre, I.semestre
Diccionario Datos      FROM Estudiante E, Inscripcion I, Materia M
 Proc. Consultas       WHERE I.CodM = ‘6311’ and I.semestre=‘2-2011’ and E.CI =
    Consultas
                         I.CI and M.CodM = I.CodM
   Integridad

   Seguridad




     Marzo 2012                  Administración de Base de Datos
Árbol lineal izquierdo

                    Próxima clase
     El DBA
                    • Transformación del árbol canónico (Axiomas del
    El SMBD
                      Algebra Relacional)
Manejo de Memoria
                    • Técnicas de optimización
  Restauración
                    • Factor de Selectividad
  Concurrencia      • Costos de los operadores
Diccionario Datos

 Proc. Consultas
    Consultas

   Integridad

   Seguridad




     Marzo 2012                Administración de Base de Datos
Axiomas del Algebra
                                                                  Relacional
                    1. Cascada de selecciones
     El DBA

    El SMBD
                      c 1 and c 2 and...and   cn
                                                   (R)           c1
                                                                       (   c2
                                                                                (...   cn
                                                                                            ( R )...))
Manejo de Memoria

                    Donde c1, c2, … cn son condiciones booleanas
  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas
    Consultas

   Integridad

   Seguridad




     Marzo 2012                      Administración de Base de Datos
Axiomas del Algebra
                                                                 Relacional
                    2. Conmutatividad de la selección
     El DBA

    El SMBD

Manejo de Memoria          c1
                                (     c2
                                           ( R ))            c2
                                                                  (   c1
                                                                           ( R ))
  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas
    Consultas

   Integridad

   Seguridad




     Marzo 2012                     Administración de Base de Datos
Axiomas del Algebra
                                                            Relacional
                    3. Cascada de proyecciones
     El DBA

    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas
    Consultas

   Integridad

   Seguridad




     Marzo 2012                Administración de Base de Datos
Axiomas del Algebra
                                                             Relacional
                    4. Distributividad de la proyección y la selección
     El DBA

    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas
    Consultas

   Integridad

   Seguridad




     Marzo 2012                 Administración de Base de Datos
Axiomas del Algebra
                                                            Relacional
                    5. Conmutatividad del Join y del Producto cartesiano
     El DBA

    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas
    Consultas

   Integridad

   Seguridad




     Marzo 2012                Administración de Base de Datos
Axiomas del Algebra
                                                             Relacional
                    6. Distributividad de la selección con respecto al Join
     El DBA
                        y al Producto cartesiano
    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia        Este axioma permite empujar las selecciones hacia abajo
                                           en el arbol.
Diccionario Datos

 Proc. Consultas
    Consultas

   Integridad

   Seguridad




     Marzo 2012                 Administración de Base de Datos
Axiomas del Algebra
                                                             Relacional
                    7. Distributividad de la proyección con respecto al
     El DBA
                        Join y al Producto cartesiano
    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia

Diccionario Datos       Este axioma permite empujar las proyecciones hacia
                                        abajo en el arbol.
 Proc. Consultas
    Consultas

   Integridad

   Seguridad




     Marzo 2012                 Administración de Base de Datos
Axiomas del Algebra
                                                             Relacional
                    7. Distributividad de la proyección con respecto al
     El DBA
                        Join y al Producto cartesiano
    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia

Diccionario Datos       Este axioma permite empujar las proyecciones hacia
                                        abajo en el arbol.
 Proc. Consultas
    Consultas

   Integridad

   Seguridad




     Marzo 2012                 Administración de Base de Datos
Axiomas del Algebra
                                                             Relacional
                    8. Conmutatividad de la unión y la intersección
     El DBA
                    9. Asociatividad de la union, la intersección, y el
    El SMBD
                        producto cartesiano
Manejo de Memoria


  Restauración


  Concurrencia      10. Distributividad de la selección con respecto a la
Diccionario Datos      Unión y la Intersección
 Proc. Consultas
    Consultas
                    11. Distributividad de la proyección con respecto a la
                       Unión y la Intersección
   Integridad

   Seguridad




     Marzo 2012                 Administración de Base de Datos
Axiomas del Algebra
                                                            Relacional
                    12. Conversión del Producto Cartesiano en Join
     El DBA

    El SMBD

Manejo de Memoria


  Restauración
                    Si cond es una igualdad de atributos de R1 y R2
  Concurrencia

Diccionario Datos

 Proc. Consultas
    Consultas

   Integridad

   Seguridad




     Marzo 2012                Administración de Base de Datos
Técnicas de optimización

     El DBA
                    Heurísticas
    El SMBD
                    • Se refiere a las mejores prácticas
Manejo de Memoria
                    • Viene de la experiencia de los expertos
  Restauración
                    Costo
  Concurrencia

Diccionario Datos   • Transforma el árbol de ejecución usando
                      diferentes técnicas (n transformaciones)
 Proc. Consultas
    Consultas       • Estima los costos de cada
   Integridad
                      transformación y se queda con la que
                      tiene costo mínimo
   Seguridad




     Marzo 2012             Administración de Base de Datos
Técnicas de control de
                                                       concurrencia

     El DBA         • Heurísticas
                      – Se construye el árbol canónico
    El SMBD
                      – Se transforma usando los axiomas del AR en el
Manejo de Memoria
                        siguiente orden
  Restauración
                      1. Aplicar el axioma o regla 1
                      2. Aplicar axiomas 2, 4, 6 y 10, para desplazar cada
  Concurrencia           operación SELECT hacia abajo en el árbol de
                         ejecución.
Diccionario Datos
                      3. Aplicar axiomas 5 y 9, para reordenar los nodos hoja
 Proc. Consultas         utilizando el siguiente criterio:
                         a) Posicionar las relaciones con los SELECT más
   Integridad
                            restrictivos de forma que sean ejecutadas en primer
   Seguridad
                            lugar.




     Marzo 2012                Administración de Base de Datos                    31
Técnicas de control de
                                                       concurrencia

     El DBA         • Heurísticas (continuación)
    El SMBD
                      3. Aplicar axiomas 5 y 9, para reordenar los nodos
Manejo de Memoria
                         hoja utilizando el siguiente criterio:
                         b) Verificar que las ordenaciones no produzcan productos
  Restauración
                            cartesianos que no puedan convertirse en JOIN
  Concurrencia        4. Aplicar axioma 12, para combinar los SELECT con los
                         PRODUCTOS CARTESIANOS, para formar una
Diccionario Datos        operación de JOIN
 Proc. Consultas      5. Aplicar axiomas 3, 4, 7, 11 para bajar en el árbol las
                         operaciones PROJECT lo más que se pueda.
   Integridad

   Seguridad




     Marzo 2012                Administración de Base de Datos                 32
Técnicas de control de
                                                      concurrencia

     El DBA         • Ejercicio
                       – Seleccionar los estudiantes que pasaron
    El SMBD
                         Administración de base de datos en el semestre
Manejo de Memoria        2-2009
  Restauración
                     Select Nombre
  Concurrencia       From Estudiante E, Cursar C, Materia M
                     Where E.CI = C.CI and Nota >=10, and
Diccionario Datos
                            M.Cod_Mat =C.Cod_Mat and M.Nombre =
 Proc. Consultas            ‘Administración de base de datos’ and
                            semester_cursa = ’2-2009’
   Integridad

   Seguridad




     Marzo 2012               Administración de Base de Datos        33
Factor de selectividad

     El DBA         • Una vez que se ha construido el árbol de
                      ejecución lógico se debe construir el físico
    El SMBD

Manejo de Memoria
                    • Es una técnica de estimación del tamaño
                      de los resultados intermedios o vistas
  Restauración        (cantidad de registros), por medio de una
  Concurrencia        función de probabilidad
Diccionario Datos   • Se asume independencia y
 Proc. Consultas
                      uniformidad en los valores de los
                      atributos
   Integridad
                    • Se aplica para las selecciones y los join
   Seguridad




     Marzo 2012               Administración de Base de Datos   34
Factor de selectividad

     El DBA         • Uniformidad
                      – Es igualmente probable que una tupla Ti tenga
    El SMBD
                        un valor C en el atributo Aj.
Manejo de Memoria

                                                                   Se lee la
  Restauración                                                  probabilidad de
                      – Los valores de Aj están distribuidos     que las tuplas
  Concurrencia                                                  de Ti cumpla la
                        uniformemente entre las tuplas.
                                                                condición Ai= c
Diccionario Datos
                    • Independencia
 Proc. Consultas      – Al ejecutarse la siguiente consulta
   Integridad
                        se asume que la satisfacibilidad de que la
                        condición cond1 es independiente a la
   Seguridad            satisfacibilidad de la condición cond2.


     Marzo 2012               Administración de Base de Datos             35
Factor de selectividad

     El DBA         • Casos Base                              Los que cumplen
                                                                la condición
    El SMBD
                                                                     Valores
Manejo de Memoria                                                    totales

  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012             Administración de Base de Datos                     36
El DBA         • Casos base
                      – Factor de selectividad del Join
    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012               Administración de Base de Datos   37
Ejemplo del uso del fs

     El DBA         • Ejemplo
                      – ¿Cuál es el factor de selectividad la condición
    El SMBD
                        sexo = ‘F’ en la tabla empleado?
Manejo de Memoria
                                                                        1
                             fs ( Sexo      ' F ' , Empleado )               0 ,5
  Restauración                                           2
                      – Si la tabla empleados contiene 300.000
  Concurrencia
                        registros ¿cuántos registros tiene la siguiente
Diccionario Datos       vista?
 Proc. Consultas            T1                         ( Empleado )
                                         Sexo   'F '

   Integridad
                      T1    Empleado            fs ( Sexo       ' F ' , Empleado )
   Seguridad
                             T1      300 . 000          0 ,5    150 . 000

     Marzo 2012               Administración de Base de Datos                        38
Costo de un Árbol de
                                                             ejecución

     El DBA         • Próxima clase
                      – Costo de los Operadores físicos
    El SMBD
                         •   Join
Manejo de Memoria
                         •   Order by
  Restauración
                         •   Project
                         •   Select
  Concurrencia

Diccionario Datos     – Evaluar el árbol de ejecución físico.
 Proc. Consultas         • Materialización
                         • Encausamiento
   Integridad

   Seguridad




     Marzo 2012                Administración de Base de Datos       39
Clase de hoy

                    – Modelo de costo
     El DBA
                    – Costo de los operadores del Algebra Relacional
    El SMBD
                       • Select
Manejo de Memoria      • Project.
                       • Order By
  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012             Administración de Base de Datos              40
Modelo de Costos

     El DBA         • Es una herramienta estadística formal
                      para evaluar el costo de un plan físico de
    El SMBD
                      ejecución.
Manejo de Memoria
                    • Se mide en función del tiempo y puede
  Restauración        expresarse en términos de:
  Concurrencia         –   Accesos a disco
Diccionario Datos
                       –   Tiempo del CPU
                       –   Costo de comunicación (Sist. Dist)
 Proc. Consultas
                       –   Tiempo de respuesta para un plan de
   Integridad              evaluación de una consulta.
   Seguridad




     Marzo 2012                 Administración de Base de Datos       41
Modelo de Costo

     El DBA

    El SMBD

Manejo de Memoria

                    ¿Cuál es el costo más importante en las
  Restauración
                      bases de datos centralizadas?
  Concurrencia
                      Acceso a disco
Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012               Administración de Base de Datos         42
El DBA         • Para calcular el costo de acceso a disco
                      necesitamos.
    El SMBD
                       – Tamaño a cada archivo de datos y vistas
Manejo de Memoria         • Número de registros
                          • Tamaño de los atributos y los registros
  Restauración
                          • Tamaño de los bloques
  Concurrencia         – Factor de selectividad
                          • Número de valores distintos,
Diccionario Datos
                          • mínimo y máximo de los atributos de búsqueda,
 Proc. Consultas       – Métodos de acceso (organización del archivo)
                       – Índices del archivo
   Integridad
                          • números de niveles (altura)
   Seguridad              • Tipo (primario, secundario, agrupado)



     Marzo 2012                 Administración de Base de Datos             43
Cálculo del espacio en disco
                                 requerido por una relación

     El DBA         1. Registros de longitud fija y no extensible
                       N: el número de registro del archivo A
    El SMBD
                       Ra: el tamaño en bytes de cada registro
Manejo de Memoria
                       B: Tamaño en bytes de cada bloque
  Restauración


  Concurrencia                  B                     NumBloques   ( A)
                                                                          N
                       fdb                                                fdb
Diccionario Datos
                               Ra
 Proc. Consultas

   Integridad           Se usa para las tablas base
   Seguridad




     Marzo 2012                Administración de Base de Datos                  44
Estimación de costos

     El DBA         2. Extensibles / Tamaño Fijo
    El SMBD
                                                             N       Ra
Manejo de Memoria        NumBloques           ( A)
                                                                 B
  Restauración


  Concurrencia
                      Se usa para las tablas vista o resultados
Diccionario Datos     intermedios
 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012                Administración de Base de Datos            45
Estimación de Costos

     El DBA         4. Tamaño variable
    El SMBD
                     se usan las mismas fórmulas pero se
Manejo de Memoria
                      calcula un promedio de tamaño del
                      registro
  Restauración


  Concurrencia          RA   tamaño promedio               de un registro A,
Diccionario Datos       con técnic as de muestreo.
 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012                Administración de Base de Datos                 46
Costo de operadores físicos

     El DBA         •   Selección
    El SMBD
                    •   Ordenamiento
Manejo de Memoria
                    •   Proyección
                    •   Reunión
  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012               Administración de Base de Datos   47
Estimación de costos en
                              operaciones físicas: Selección

     El DBA         • Operación Selección
    El SMBD
                                             condicion
                                                          (R)
Manejo de Memoria
                      –   Selección sin índices
  Restauración
                      –   Selección con índices
  Concurrencia        –   Selección de igualdad
Diccionario Datos     –   Selección de comparación
 Proc. Consultas
                      –   Selecciones complejas (Conjuntivas o
                          Disyuntivas)
   Integridad

   Seguridad




     Marzo 2012                Administración de Base de Datos   48
Selección sin índices

     El DBA         • Considere una operación selección sobre
                      un archivo A y:
    El SMBD

Manejo de Memoria    TB   A
                              : tamaño       que ocupa la relación   A
  Restauración                en bloques           de disco
  Concurrencia
                      D : tiempo        de acceso a disco
Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012                  Administración de Base de Datos         49
Selección sin índices

     El DBA         • Búsqueda lineal
    El SMBD
                                        TB      A
Manejo de Memoria        Costo
                                           2
  Restauración
                         Si la condición            no es sobre la clave :
  Concurrencia

Diccionario Datos        Costo        TB    A

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012               Administración de Base de Datos                50
Selección sin índice

     El DBA         • Busqueda binaria
                      – Si el archivo se ordena según el atributo clave
    El SMBD
                        y la condición es una igualdad.
Manejo de Memoria


  Restauración                           Costo            log 2 (TB A )
  Concurrencia
                      – Si la selección no es de igualdad, o no es sobre
Diccionario Datos       un atribudo clave (y el archivo está ordenado
 Proc. Consultas
                        según éste atributo)

   Integridad
                        Costo         log 2 (TB A )            (TB   f
                                                                           1)
   Seguridad           TB   f
                                : Número de bloques                      que cumplen
                        con la condición               (se calculan         con fs)
     Marzo 2012                  Administración de Base de Datos                       51
Selección con índices

     El DBA

    El SMBD

Manejo de Memoria

                    • Asumimos que los índices son de tipo
  Restauración
                      árbol B+ y la longitud del camino es
  Concurrencia        siempre la altura del árbol.
Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012              Administración de Base de Datos   52
Selección de igualdad

     El DBA         • Índice primario
                      Se obtiene el número de niveles de índice + 1
    El SMBD

Manejo de Memoria
                    • Índice agrupado

  Restauración                         s
                      cos to                     niveles _ del _ indice
  Concurrencia                        fdb
Diccionario Datos
                      s     fs ( c , R ) nr
                      s : C ardinalid ad de s elec c ión del atributo   de indexac ión
 Proc. Consultas
                    • Índice secundario
   Integridad

   Seguridad
                                cos to      s    niveles _ del _ indice



     Marzo 2012                     Administración de Base de Datos                      53
Selección de comparación

     El DBA         • Índice primario o agrupado
                      – Si la comparación es Att > v o Att ≥ v se
    El SMBD
                        puede obtener el primer valor de v en el
Manejo de Memoria       archivo de datos, de allí se explora hasta el
                        final
  Restauración
                      – Si la comparación Att < v o Att ≤ v no es
  Concurrencia          necesario usar el índice.
Diccionario Datos   • Índice secundario
 Proc. Consultas      – Sólo es necesario hallar el primer apuntador a
                        v y recorrer la lista formada por las hojas para
   Integridad           obtener los apuntadores a los diferentes
   Seguridad            bloques del archivo de datos.


     Marzo 2012               Administración de Base de Datos           54
Selecciones complejas

     El DBA         • Conjuntivas (c1 and c2)
                      - Índices Simples (índices diferentes por cada
    El SMBD
                        atributo)
Manejo de Memoria        - Se verifica si hay un índice sobre alguno de los
                           atributos, se busca sobre éste y se verifica si
  Restauración
                           cumple las demás condiciones
  Concurrencia           - El más económico es el que tiene el fs más bajo
Diccionario Datos        - Si hay un índice por cada atributo, se utilizan los
                           distintos índices, se recuperan los elementos y
 Proc. Consultas
                           luego se interceptan los tres conjuntos
   Integridad
                           obtenidos.

   Seguridad




     Marzo 2012               Administración de Base de Datos                 55
Selecciones Complejas

     El DBA         • Conjuntivas (Cont)
                      •   Índices Compuestos
    El SMBD
                            • Sólo puede utilizarse si cada uno de los atributos
Manejo de Memoria             están en la condición de selección
                            • El tipo de índice determina el uso de algoritmos
  Restauración                de selección simples
  Concurrencia      • Disyuntiva
Diccionario Datos     – Se realiza una búsqueda y se realiza la unión
                        de éstas.
 Proc. Consultas
                      – El hecho de que un sólo atributo no tenga
   Integridad           índice implica una búsqueda lineal de datos.
   Seguridad




     Marzo 2012                 Administración de Base de Datos               56
Operación Proyección

     El DBA         • Con duplicados
    El SMBD
                                                                 B’
Manejo de Memoria

                    For each tupla t in B
  Restauración
                    Guardar en B’ < t.At1, t.At2, …, t.Ati >
                                                                      B
  Concurrencia      End
Diccionario Datos
                    Resultado tabla o relación con registros
                      duplicados
 Proc. Consultas

   Integridad       • Costo = TBB (recorrer la tabla B)
   Seguridad        • Costo de resultado intermedio
                       – TBB’ (guardar la tabla proyectada)

     Marzo 2012                Administración de Base de Datos        57
Operación Proyección

     El DBA         • Sin duplicados
    El SMBD
                    • Basado en ordenamiento
Manejo de Memoria


  Restauración      For each tupla t in B
                    Guardar en B’ < t.At1, t.At2, …, t.Ati >
  Concurrencia
                    End
Diccionario Datos   Ordenar B’ en base a los atributos de proyección
 Proc. Consultas
                    For each tupla t in B’
                    Guardar t en B’’ sii no existe t en B’’
   Integridad
                    End
   Seguridad        Resultado tabla o relación donde los duplicados
                      son eliminados

     Marzo 2012                Administración de Base de Datos         58
Operación Proyección

     El DBA         • Costo de proyección
    El SMBD

Manejo de Memoria
                     TB B        TB B '           TB B ' log( TB B ' )
  Restauración


  Concurrencia                                      Ordenar B’
                    Recorrer B
Diccionario Datos
                                 Generar B’
 Proc. Consultas

   Integridad       • Costo de almacenamiento
   Seguridad
                       TB B ''     Tabla proyectada sin duplicados


     Marzo 2012                   Administración de Base de Datos        59
Operación Proyección

     El DBA         • Basado en HASH
                    Se crea B’
    El SMBD
                    For each tupla tj in B’
Manejo de Memoria
                      Aplicar f(tj) #se contruye una tabla hash
  Restauración
                      en mp
                      si tupla tj en f(ti) / ti = tj
  Concurrencia
                          Descartar ti
Diccionario Datos
                      sino
 Proc. Consultas          Guardar ti en f(ti)
   Integridad         fsi
                      Retornar tuplas en tabla hash
   Seguridad
                    end

     Marzo 2012              Administración de Base de Datos      60
Operación Proyección

     El DBA         • Basado en HASH (costo)
                      – Suponiendo que
    El SMBD

Manejo de Memoria
                     B– se puede almacenar en la tabla hash
  Restauración
                     TB B    TB B '
  Concurrencia
                      Sino
Diccionario Datos

 Proc. Consultas     TB B    3TB B '
   Integridad         Aunque este costo puede ser menor que el de
                        ordenamiento, requiere memoria principal
   Seguridad
                      + Costo de almacenar B’’

     Marzo 2012                 Administración de Base de Datos     61
Operación Join

     El DBA         • El operador Join se puede evaluar de
                      varias maneras distintas
    El SMBD
                      –   Nested loop join
Manejo de Memoria
                      –   Block Nested Loop Join
  Restauración        –   Merge sort join
                      –   Index Join
  Concurrencia
                      –   Hash Join
Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012                Administración de Base de Datos                62
Nested Loop Join

     El DBA

    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia
                    For each tupla tA in A
Diccionario Datos            For each tupla tB in B
                                      If satisfy (tA, tB, Cond)
 Proc. Consultas                                Return (tA. tB)
                                      End
   Integridad
                             End
                    End
   Seguridad
                                                                   RA = cantidad de
                      Costo = TBA + RA*TBB                         registro de A

     Marzo 2012                  Administración de Base de Datos                      63
Block Nested Loop Join

     El DBA

    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia
                             A                                          B
Diccionario Datos   Este algorito se puede mejorar si se aprovechan los
                    bloques de memoria disponibles
 Proc. Consultas
                    Si se carga A por bloques el costo seria
   Integridad           Costo = TBA + TBA*TBB
   Seguridad
                    Si se tienen T bloques disponibles se dejan dos para
                    entrada/salida
                                                    TB A
                          Costo      TB A                   *TB     B
                                                    T- 2
     Marzo 2012                   Administración de Base de Datos           64
Sort-Merge Join

     El DBA

    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia
                            A                                      B
Diccionario Datos   Si ambas tablas están ordenadas sobre los atributos
                    del Join, el costo es el menor
 Proc. Consultas
                    Costo = TBA + TBB
   Integridad       Si no hay que agregar el costo de ordenación
   Seguridad        Costo = TBA Log(TBA )+ TBB Log(TBB ) +TBA +TBB



     Marzo 2012                  Administración de Base de Datos           65
Index Join

     El DBA

    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia
                             A                                      B
Diccionario Datos   Se usa si la tabla de la derecha tiene un índice sobre el
                    atributo del Join, el costo es el de leer A y buscar cada
 Proc. Consultas    registro de A por el índice
   Integridad
                    Costo = TB(A) + CostoBuscar*Ra
   Seguridad
                    El costo de buscar depende del indice (ver operador
                    select)

     Marzo 2012                   Administración de Base de Datos               66
Hash Join

     El DBA         • Se dividen las tuplas de cada relación
                      utilizando una función hash tal que:
    El SMBD
                     ta   A, tb   B / part ( A , t a )      part ( B , t b ) i .e . h ( t a )   h (tb )
Manejo de Memoria


  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012                   Administración de Base de Datos                                         67
Hash Join

     El DBA
                    • h es una función que asigna a los atributos de join
    El SMBD           los valores {0,1,..,n-1}
Manejo de Memoria   • Ha0 .. Ha(n-1) denota las particiones de A
                      inicialmente vacías. Se colocan las tuplas en Hai
  Restauración
                      con i = h(ta[atributos join])
  Concurrencia      • Hb0 .. Hb(n-1) denota las particiones de B
                      inicialmente vacías. Se colocan las tuplas en Hbi
Diccionario Datos
                      con i = h(tb[atributos join])
 Proc. Consultas
                    • Al aplicar la misma función para ambos
   Integridad         particionamientos, cada tupla de A y B que tengan
                      resultados iguales de la función de asociación,
   Seguridad
                      estarán en la misma partición


     Marzo 2012                Administración de Base de Datos           68
Hash Join

     El DBA

    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012     Administración de Base de Datos           69
Video Join

     El DBA         • Videos
                      – Video 1
    El SMBD
                      – Video 2
Manejo de Memoria


  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012                Administración de Base de Datos            70
Calcular el costo de un árbol
                                               de ejecución

     El DBA         • Una vez que el árbol este optimizado
                      – Se cambian los operadores lógicos por físicos
    El SMBD
                        p.e join por index join
Manejo de Memoria
                      – Si hay mas de un operador posible se debe
  Restauración
                        verificar el menos costoso
                      – Se calculan los costos de las operaciones por
  Concurrencia          nodo, y el costo de almacenar resultados
Diccionario Datos       intermedios
                      – Se suman los costos de todos los nodos
 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012               Administración de Base de Datos           71
Ejercicio
                    Jugador (DI, Nombre, Apellidos,               Juegos(CodEq1, CodEq2, Temporada,
                    FechaNac, Direccion)                          Fecha, Resultado, CodEquipoGana)
     El DBA         DI: 9 bytes                                   CodEq1: 4 bytes
                    Nombre: 40 bytes                              CodEq2: 4 bytes
    El SMBD         Apellidos: 40 bytes                           Temporada: 4 bytes, min : 1902, máximo
                    FechaNac: 8 bytes                             2011, valores diferentes, 110
Manejo de Memoria   Direccion: 50 bytes                           Fecha: 8 bytes (162 valores distintos)
                                                                  Resultado: 8 bytes
  Restauración      Num registros: 250.000                        CodEquipoGana: 4 bytes (INDICE)

                    Equipo( CodEq, NombreEq, FechaFund,           Num registros: 18.000
  Concurrencia
                    Ciudad, Liga, Estadio)
                    CodEq: 4 bytes                                Juega (DIJugador, CodEq, FechaIni,
Diccionario Datos
                    NombreEq: 40 bytes                            FechaFin, Posicion)
                    FechaFund: 8 bytes                            DIJugador: 9 bytes
 Proc. Consultas
                    Liga: 2 bytes (Nacional =0, Americana=1)      CodEq: 4 bytes
                    Estadio: 50 bytes                             FechaIni: 8 bytes (un promedio de 20 jug
   Integridad                                                     por año)
                    Num registros: 30                             FechaFin: 10 bytes
   Seguridad                                                      Posición: 20 bytes (9 valores distintos)

                                                                  Num registros: 875.000

     Marzo 2012                         Administración de Base de Datos                                    72
El DBA         • Consulta: Nombre, apellido y equipo de
                      los jugadores que han participado en la
    El SMBD
                      temporada 2009 en juegos ganados, y
Manejo de Memoria
                      que han jugado en primera base.
  Restauración        – Dé el árbol canónico para q.
                      – Dé el árbol optimizado heurísticamente.
  Concurrencia

Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012               Administración de Base de Datos     73
El DBA         • Suponga que el SMBD se caracteriza por
                      – Disponer de 20 bloques de memoria principal
    El SMBD
                        para las operaciones AR
Manejo de Memoria
                      – Cada bloque ocupa 1024 bytes
  Restauración        – Disponer de los operadores físicos vistos en
                        clase
  Concurrencia
                      – Materializar los resultados intermedios. Asuma
Diccionario Datos       registros fijos extensibles para las tablas
                        intermedias y no extensibles para las relaciones
 Proc. Consultas
                        base
   Integridad         – Indices primarios para las claves primarias,
   Seguridad            todos tienen 4 de altura


     Marzo 2012               Administración de Base de Datos         74
Ejemplo de plan de ejecución
                                                Caso Oracle

     El DBA

    El SMBD
                    SELECT e.employee_id, e.last_name, e.salary,
Manejo de Memoria          d.department_name, l.city
                    FROM employees e, departments d, locations l
  Restauración      WHERE e.department_id = d.department_id
                           AND d.location_id = l.location_id
  Concurrencia             AND l.city = 'Oxford'
Diccionario Datos          AND e.salary > 10500 AND e.last_name LIKE '%e%';

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012                 Administración de Base de Datos         75
El DBA

    El SMBD

Manejo de Memoria


  Restauración


  Concurrencia

Diccionario Datos

 Proc. Consultas

   Integridad

   Seguridad




     Marzo 2012     Administración de Base de Datos   76

Más contenido relacionado

La actualidad más candente

Modelo conceptual de la base de datos
Modelo conceptual de la base de datosModelo conceptual de la base de datos
Modelo conceptual de la base de datosRuth Hidalgo Tene
 
Base de datos propiedades acid
Base de datos propiedades acidBase de datos propiedades acid
Base de datos propiedades acidJefer Lee Parra
 
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspExplicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspBoris Salleg
 
Unidad 1. Fundamentos de Base de Datos
Unidad 1. Fundamentos de Base de DatosUnidad 1. Fundamentos de Base de Datos
Unidad 1. Fundamentos de Base de Datoshugodanielgd
 
Sistemas Gestores de Bases de Datos
Sistemas Gestores de Bases de DatosSistemas Gestores de Bases de Datos
Sistemas Gestores de Bases de Datosalexmerono
 
Modelo Relacional
Modelo RelacionalModelo Relacional
Modelo Relacionalomarzon
 
Gestor de almacenamiento
Gestor de almacenamientoGestor de almacenamiento
Gestor de almacenamientoCarlos Mila
 
*Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1**Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1*venusprinz583
 
Diccionario de datos en los sistemas de información
Diccionario de datos en los sistemas de informaciónDiccionario de datos en los sistemas de información
Diccionario de datos en los sistemas de informaciónYaskelly Yedra
 
Calidad de datos (data quality)
Calidad de datos (data quality)Calidad de datos (data quality)
Calidad de datos (data quality)Sergio Sanchez
 
Sistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosSistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosGuillermo Chirinos
 

La actualidad más candente (20)

Modelo conceptual de la base de datos
Modelo conceptual de la base de datosModelo conceptual de la base de datos
Modelo conceptual de la base de datos
 
Base de datos propiedades acid
Base de datos propiedades acidBase de datos propiedades acid
Base de datos propiedades acid
 
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jspExplicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
Explicacion metodologia 3 capas y base de datos, proyecto de ejemplo jsp
 
Transacciones
TransaccionesTransacciones
Transacciones
 
3. Modelo ER - Relacional
3. Modelo ER - Relacional3. Modelo ER - Relacional
3. Modelo ER - Relacional
 
1. Modelo de Datos
1. Modelo de Datos1. Modelo de Datos
1. Modelo de Datos
 
Unidad 1. Fundamentos de Base de Datos
Unidad 1. Fundamentos de Base de DatosUnidad 1. Fundamentos de Base de Datos
Unidad 1. Fundamentos de Base de Datos
 
Sistemas Gestores de Bases de Datos
Sistemas Gestores de Bases de DatosSistemas Gestores de Bases de Datos
Sistemas Gestores de Bases de Datos
 
Base de datos relacionales
Base de datos relacionalesBase de datos relacionales
Base de datos relacionales
 
Modelo Relacional
Modelo RelacionalModelo Relacional
Modelo Relacional
 
Unidad 6 Lenguaje Sql
Unidad 6 Lenguaje SqlUnidad 6 Lenguaje Sql
Unidad 6 Lenguaje Sql
 
Gestor de almacenamiento
Gestor de almacenamientoGestor de almacenamiento
Gestor de almacenamiento
 
*Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1**Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1*
 
modelo entidad-relacion
modelo entidad-relacionmodelo entidad-relacion
modelo entidad-relacion
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Diccionario de datos en los sistemas de información
Diccionario de datos en los sistemas de informaciónDiccionario de datos en los sistemas de información
Diccionario de datos en los sistemas de información
 
Calidad de datos (data quality)
Calidad de datos (data quality)Calidad de datos (data quality)
Calidad de datos (data quality)
 
Modelos de datos
Modelos de datosModelos de datos
Modelos de datos
 
Sistema De Gestión De Base De Datos
Sistema De Gestión De Base De DatosSistema De Gestión De Base De Datos
Sistema De Gestión De Base De Datos
 
MAPA CONCEPTUAL
MAPA CONCEPTUAL MAPA CONCEPTUAL
MAPA CONCEPTUAL
 

Similar a Abd procesamiento consultas

Bases de Datos
Bases de DatosBases de Datos
Bases de Datospaulocsoft
 
Novedades sql server 2008 para administradores
Novedades sql server 2008 para administradoresNovedades sql server 2008 para administradores
Novedades sql server 2008 para administradoresEnrique Catala Bañuls
 
Clase 1 - Introducción a Bases de Datos
Clase 1 - Introducción a Bases de DatosClase 1 - Introducción a Bases de Datos
Clase 1 - Introducción a Bases de DatosEddie Malca
 
Actividad 2 introduccion a los sistemas de base de datos
Actividad 2 introduccion a los sistemas de base de datosActividad 2 introduccion a los sistemas de base de datos
Actividad 2 introduccion a los sistemas de base de datosRaul Peraza Chable
 
Mejores practicas en_diseno_de_directorio_activo_en_windows_server_2003
Mejores practicas en_diseno_de_directorio_activo_en_windows_server_2003Mejores practicas en_diseno_de_directorio_activo_en_windows_server_2003
Mejores practicas en_diseno_de_directorio_activo_en_windows_server_2003Cristian Sauterel Durán
 
Conceptos basicos(base de datos)
Conceptos basicos(base de datos)Conceptos basicos(base de datos)
Conceptos basicos(base de datos)claudiachiri
 
Cuadro Comparativo
Cuadro ComparativoCuadro Comparativo
Cuadro ComparativoMartha
 
Bases de Datos
Bases de DatosBases de Datos
Bases de Datosomarfi
 
Datawarehouse
DatawarehouseDatawarehouse
Datawarehouseshady85
 
Tm06 diseño bd
Tm06 diseño bdTm06 diseño bd
Tm06 diseño bdJulio Pari
 
SQL Denali Microsoft BI Raona
SQL Denali Microsoft BI RaonaSQL Denali Microsoft BI Raona
SQL Denali Microsoft BI RaonaRaona
 

Similar a Abd procesamiento consultas (20)

Abd integridad
Abd integridadAbd integridad
Abd integridad
 
Abd procesamiento consultas (parte1)
Abd procesamiento consultas (parte1)Abd procesamiento consultas (parte1)
Abd procesamiento consultas (parte1)
 
Abd procesamiento consultas (parte2)
Abd procesamiento consultas (parte2)Abd procesamiento consultas (parte2)
Abd procesamiento consultas (parte2)
 
Abd tema2
Abd tema2Abd tema2
Abd tema2
 
Bases de Datos
Bases de DatosBases de Datos
Bases de Datos
 
Novedades sql server 2008 para administradores
Novedades sql server 2008 para administradoresNovedades sql server 2008 para administradores
Novedades sql server 2008 para administradores
 
Abd tema4 dd
Abd tema4 ddAbd tema4 dd
Abd tema4 dd
 
Abd tema1 parteii
Abd tema1 parteiiAbd tema1 parteii
Abd tema1 parteii
 
Abd tema0y1
Abd tema0y1Abd tema0y1
Abd tema0y1
 
Basededatosicompleto 091122141836-phpapp02
Basededatosicompleto 091122141836-phpapp02Basededatosicompleto 091122141836-phpapp02
Basededatosicompleto 091122141836-phpapp02
 
Clase 1 - Introducción a Bases de Datos
Clase 1 - Introducción a Bases de DatosClase 1 - Introducción a Bases de Datos
Clase 1 - Introducción a Bases de Datos
 
Actividad 2 introduccion a los sistemas de base de datos
Actividad 2 introduccion a los sistemas de base de datosActividad 2 introduccion a los sistemas de base de datos
Actividad 2 introduccion a los sistemas de base de datos
 
Mejores practicas en_diseno_de_directorio_activo_en_windows_server_2003
Mejores practicas en_diseno_de_directorio_activo_en_windows_server_2003Mejores practicas en_diseno_de_directorio_activo_en_windows_server_2003
Mejores practicas en_diseno_de_directorio_activo_en_windows_server_2003
 
Conceptos basicos(base de datos)
Conceptos basicos(base de datos)Conceptos basicos(base de datos)
Conceptos basicos(base de datos)
 
Diseño de un Datamart
Diseño de un DatamartDiseño de un Datamart
Diseño de un Datamart
 
Cuadro Comparativo
Cuadro ComparativoCuadro Comparativo
Cuadro Comparativo
 
Bases de Datos
Bases de DatosBases de Datos
Bases de Datos
 
Datawarehouse
DatawarehouseDatawarehouse
Datawarehouse
 
Tm06 diseño bd
Tm06 diseño bdTm06 diseño bd
Tm06 diseño bd
 
SQL Denali Microsoft BI Raona
SQL Denali Microsoft BI RaonaSQL Denali Microsoft BI Raona
SQL Denali Microsoft BI Raona
 

Más de Escuela de Computación UCV (19)

Recuperacion ABD UCV
Recuperacion ABD UCVRecuperacion ABD UCV
Recuperacion ABD UCV
 
Concurrencia 2 ABD UCV
Concurrencia 2 ABD UCVConcurrencia 2 ABD UCV
Concurrencia 2 ABD UCV
 
Concurrencia 1 ABD UCV
Concurrencia 1 ABD UCVConcurrencia 1 ABD UCV
Concurrencia 1 ABD UCV
 
Integridad de datos
Integridad de datosIntegridad de datos
Integridad de datos
 
Seguridad datos i
Seguridad datos i Seguridad datos i
Seguridad datos i
 
Seguridad datos ii vii
Seguridad datos ii viiSeguridad datos ii vii
Seguridad datos ii vii
 
Abd manejo memoria III
Abd manejo memoria IIIAbd manejo memoria III
Abd manejo memoria III
 
Abd manejo memoria II
Abd manejo memoria IIAbd manejo memoria II
Abd manejo memoria II
 
Abd manejo memoria Parte I
Abd manejo memoria Parte IAbd manejo memoria Parte I
Abd manejo memoria Parte I
 
Bd no sq ldocumento
Bd no sq ldocumentoBd no sq ldocumento
Bd no sq ldocumento
 
Bd nosql clave valor
Bd nosql clave valorBd nosql clave valor
Bd nosql clave valor
 
Bd nosql tecnicas III
Bd nosql tecnicas IIIBd nosql tecnicas III
Bd nosql tecnicas III
 
Bd no sql tecnicas2
Bd no sql tecnicas2Bd no sql tecnicas2
Bd no sql tecnicas2
 
Bd no sql tecnicas
Bd no sql tecnicasBd no sql tecnicas
Bd no sql tecnicas
 
Bd no sqlcb2
Bd no sqlcb2Bd no sqlcb2
Bd no sqlcb2
 
Bd no sql conceptos basicos
Bd no sql conceptos basicosBd no sql conceptos basicos
Bd no sql conceptos basicos
 
Abd procesamiento consultas (parte 3)
Abd procesamiento consultas (parte 3)Abd procesamiento consultas (parte 3)
Abd procesamiento consultas (parte 3)
 
Abd seguridad
Abd seguridadAbd seguridad
Abd seguridad
 
Abd tema3
Abd tema3Abd tema3
Abd tema3
 

Último

Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024IES Vicent Andres Estelles
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...JAVIER SOLIS NOYOLA
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxlclcarmen
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
prostitución en España: una mirada integral!
prostitución en España: una mirada integral!prostitución en España: una mirada integral!
prostitución en España: una mirada integral!CatalinaAlfaroChryso
 
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfPROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfEduardoJosVargasCama1
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024IES Vicent Andres Estelles
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalJonathanCovena1
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...JoseMartinMalpartida1
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfcarolinamartinezsev
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfMercedes Gonzalez
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxEliaHernndez7
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024IES Vicent Andres Estelles
 

Último (20)

Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
 
PP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomasPP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomas
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
prostitución en España: una mirada integral!
prostitución en España: una mirada integral!prostitución en España: una mirada integral!
prostitución en España: una mirada integral!
 
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfPROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
 
Novena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan EudesNovena de Pentecostés con textos de san Juan Eudes
Novena de Pentecostés con textos de san Juan Eudes
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 

Abd procesamiento consultas

  • 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. Contenido El DBA • Cómo se procesa una consulta El SMBD • Traducir una consulta de SQL a AR – Repaso Algebra Relacional Manejo de Memoria • Árbol de ejecución Restauración – Árbol de ejecución lógico Concurrencia Concurrencia – Árbol de ejecución lineal izquierdo Diccionario Datos – Árbol canónico Proc. Consultas – Axiomas del Algebra relacional Integridad • Técnicas para optimizar consultas – Basada en heurísticas Seguridad – Basada en costos. Marzo 2012 Administración de Base de Datos 2
  • 3. Contenido El DBA • Modelo de costos – Factor de selectividad El SMBD – Costo de los operadores del Algebra Relacional Manejo de Memoria • Select Restauración • Project. • Join Concurrencia Concurrencia • Order Diccionario Datos • Árbol de ejecución físico Proc. Consultas – Evaluar el árbol de ejecución físico. • Materialización Integridad • Encausamiento Seguridad Marzo 2012 Administración de Base de Datos 3
  • 4. Cómo procesar una consulta El DBA El SMBD Manejo de Memoria SELECT Cuenta, Saldo Procesamiento FROM Cuenta WHERE Saldo >40.000 de consulta Restauración Concurrencia Diccionario Datos Proc. Consultas Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 4
  • 5. Cómo procesar una consulta ρCond (R1) El DBA Consulta Analizador Expresión El SMBD de alto y en Algebra nivel traductor Relacional Manejo de Memoria Restauración Select * From R1 Optimi- Where Cond Diccionario de datos zador Concurrencia Estadísticas de Diccionario Datos los datos Resultado Proc. Consultas Consultas de la Motor de Plan de evaluación ejecución consulta Integridad Búsqueda A1 A2 A3 binaria Seguridad xx yy zz xy yy xz Base de datos Silberschatz, Korth, & Sudarshan, 2006 Marzo 2012 Administración de Base de Datos 5
  • 6. Análisis El DBA Consulta Analizador El SMBD de alto y nivel traductor Manejo de Memoria Restauración Diccionario de datos Concurrencia • Análisis léxico: Identifica los elementos del lenguaje como por ejemplo, las palabras reservadas de SQL, si están bien Diccionario Datos formados los nombres de los atributos y relaciones en el texto Proc. Consultas de la consulta. Consultas • Análisis sintáctico: Comprueba la sintaxis de la consulta de Integridad acuerdo a las reglas sintácticas del lenguaje de consulta. Seguridad • 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. Marzo 2012 Administración de Base de Datos 6
  • 7. Procesamiento de consulta El DBA Consulta Analizador Expresión El SMBD de alto y en Algebra nivel traductor Relacional Manejo de Memoria Restauración Diccionario de datos Concurrencia Diccionario Datos Proc. Consultas Consultas • Traductor: Crea una representación interna de la consulta, mediante una estructura de árbol llamado árbol de consulta, Integridad el cual está basado en el álgebra relacional extendido Seguridad Marzo 2012 Administración de Base de Datos 7
  • 8. Procesamiento de consulta El DBA Expresión en Algebra Optimi- zador El SMBD Relacional Estadísticas de Manejo de Memoria los datos Resultado Motor de Plan de Restauración de la evaluación ejecución consulta Concurrencia Base de datos Diccionario Datos Proc. Consultas Consultas • Optimización: desarrolla una estrategia de ejecución para obtener el resultado de la consulta, evaluando cientos de Integridad estrategias distintas basadas en el álgebra relacional, y sus operadores físicos, escogiendo alguna de las estrategias Seguridad menos costosa (plan de ejecución) • Motor de ejecución: recibe el plan de evaluación, lo ejecuta y devuelve la respuesta de la consulta. Marzo 2012 Administración de Base de Datos 8
  • 9. Algebra Relacional Select <lista de atributos> El DBA Lenguaje de consulta From <lista de tablas> de alto nivel El SMBD Where <condiciones> Manejo de Memoria Restauración Operadores del Algebra Relacional Concurrencia • Proyección Unarios • Selección Lenguaje de consulta Diccionario Datos • Ordenación de bajo nivel Proc. Consultas Consultas • Unión • Intersección Integridad Binarios • Producto cartesiano • Reunión Natural Seguridad • Resta • División Marzo 2012 Administración de Base de Datos 9
  • 10. Algebra Relacional • PROYECCION El DBA – Define una vista que contiene un subconjunto vertical de R, El SMBD extrayendo los valores de los atributos especificados y eliminando los duplicados. Manejo de Memoria – Ejm: T 1 ( Empleado ) CI , Sueldo Restauración Concurrencia Select <lista de atributos> CI Nombre Sueldo 123 Andrea Rojas 1500 Diccionario Datos From <lista de tablas> 234 Humberto 2400 Proc. Consultas Where <condiciones> Perez Consultas 254 Camilo Diaz 1600 Integridad Seguridad Marzo 2012 Administración de Base de Datos 10
  • 11. Algebra Relacional • SELECCIÓN El DBA – Define una vista que contiene todas las tuplas de R que El SMBD satisfacen la condición especificada. – Ejm: Manejo de Memoria T1 ( Empleado ) Sueldo 1500 Restauración Select <lista de atributos> Concurrencia CI Nombre Sueldo From <lista de tablas> 123 Andrea Rojas 1500 Diccionario Datos Where <condiciones> 234 Humberto 2400 Proc. Consultas Consultas Perez 254 Camilo Diaz 1600 Integridad Seguridad Marzo 2012 Administración de Base de Datos 11
  • 12. Algebra Relacional • PRODUCTO CARTESIANO El DBA – Define una relación que es la concatenación de cada tupla El SMBD de la relación R con cada tupla de la relación S. – RXS Manejo de Memoria CI CodB CodB Desc Restauración 123 1 1 Malta Select <lista de atributos> 234 1 2 7 up Concurrencia From <lista de tablas> 254 2R.CodB Diccionario Datos R.CI S.CodB Desc Where <condiciones> 123 1 1 Malta Proc. Consultas Consultas 234 1 1 Malta Integridad 254 2 1 Malta Seguridad 123 1 2 7 up 234 1 2 7 up 254 2 2 7 up Marzo 2012 Administración de Base de Datos 12
  • 13. Algebra Relacional • REUNION NATURAL (JOIN) El DBA – Es una combinación entre dos relaciones donde se verifica El SMBD la condición de igualdad sobre los atributos comunes entre ambas relaciones. Del resultado se elimina una de las dos Manejo de Memoria apariciones de cada atributo Restauración CI CodB CodB Desc 123 1 1 Malta Concurrencia Select <lista de atributos> 234 1 2 7 up Diccionario Datos R.CI R.CodB S.CodB Desc From <lista de tablas> 254 2 123 1 1 Malta Proc. Consultas Consultas Where <condiciones> and 234 1 1 Malta Integridad T1.a1=t2.a1 and …. 254 2 1 Malta Seguridad 123 1 2 7 up 234 1 2 7 up 254 2 2 7 up Marzo 2012 Administración de Base de Datos 13
  • 14. Algebra Relacional • REUNION NATURAL (JOIN) El DBA – Es una combinación entre dos relaciones donde se verifica El SMBD la condición de igualdad sobre los atributos comunes entre ambas relaciones. Del resultado se elimina una de las dos Manejo de Memoria apariciones de cada atributo Restauración CI CodB CodB Desc 123 1 1 Malta Concurrencia Select <lista de atributos> 234 1 2 7 up Diccionario Datos From <lista de tablas> 254 2 Proc. Consultas Consultas Where <condiciones> and CI CodB Desc Integridad T1.a1=t2.a1 and …. 123 1 Malta Seguridad 234 1 Malta 254 2 7 up Marzo 2012 Administración de Base de Datos 14
  • 15. Árbol de ejecución • Representa una consulta en algebra El DBA relacional El SMBD • Es un árbol de orden 2 Manejo de Memoria – Cada nodo interno representa una tabla vista o resultado intermedio producido por una operación Restauración – Cada hoja representa una tabla base Concurrencia Case Base Case Inductivo Diccionario Datos , , Op Proc. Consultas T Op Consultas  , X ,- O Integridad Seguridad P1 y P2 sub arboles P1 P1 P2 Op operador AR Marzo 2012 Administración de Base de Datos 15
  • 16. Árbol de ejecución • Ejemplo El DBA Π Apellido1, Nombre, Sueldo (σ Sueldo > c (Empleado El SMBD Departamento)) Manejo de Memoria Π Apellido1, Nombre, Sueldo Restauración T1 <-(Empleado Departamento) Concurrencia σ Sueldo > c T2 <- σ Sueldo > c (T1) Diccionario Datos Tr <- Π Apellido1, Nombre, Sueldo (T2) Proc. Consultas Consultas Integridad Seguridad Departa Empleado mento Marzo 2012 Administración de Base de Datos 16
  • 17. Árbol lineal izquierdo • Es un árbol de ejecución donde en cada nodo El DBA binario el hijo derecho es una tabla El SMBD Manejo de Memoria • Arbol canónico: Es un árbol lineal izquierdo donde cada nodo binario corresponde a un Restauración producto cartesiano, la selección es sobre toda la Concurrencia condición y la proyección sobre todos los atributos Diccionario Datos SELECT <Lista Atributos> Proc. Consultas FROM T1, T2, … Tn Consultas WHERE <Condición> Integridad Nota: es el mas rápido de Seguridad construir pero el más costoso Marzo 2012 Administración de Base de Datos
  • 18. Árbol lineal izquierdo Ejercicios El DBA Construya el árbol canónico de las sig. consultas El SMBD SELECT CI, Nombre, CodMateria Manejo de Memoria FROM Estudiante E, inscripcion I WHERE I.CodM = ‘6311’ and semestre=‘2-2011’ and E.CI = Restauración I.CI Concurrencia SELECT E.CI, E.Nombre, M.Nombre, I.semestre Diccionario Datos FROM Estudiante E, Inscripcion I, Materia M Proc. Consultas WHERE I.CodM = ‘6311’ and I.semestre=‘2-2011’ and E.CI = Consultas I.CI and M.CodM = I.CodM Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 19. Árbol lineal izquierdo Próxima clase El DBA • Transformación del árbol canónico (Axiomas del El SMBD Algebra Relacional) Manejo de Memoria • Técnicas de optimización Restauración • Factor de Selectividad Concurrencia • Costos de los operadores Diccionario Datos Proc. Consultas Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 20. Axiomas del Algebra Relacional 1. Cascada de selecciones El DBA El SMBD c 1 and c 2 and...and cn (R) c1 ( c2 (... cn ( R )...)) Manejo de Memoria Donde c1, c2, … cn son condiciones booleanas Restauración Concurrencia Diccionario Datos Proc. Consultas Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 21. Axiomas del Algebra Relacional 2. Conmutatividad de la selección El DBA El SMBD Manejo de Memoria c1 ( c2 ( R )) c2 ( c1 ( R )) Restauración Concurrencia Diccionario Datos Proc. Consultas Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 22. Axiomas del Algebra Relacional 3. Cascada de proyecciones El DBA El SMBD Manejo de Memoria Restauración Concurrencia Diccionario Datos Proc. Consultas Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 23. Axiomas del Algebra Relacional 4. Distributividad de la proyección y la selección El DBA El SMBD Manejo de Memoria Restauración Concurrencia Diccionario Datos Proc. Consultas Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 24. Axiomas del Algebra Relacional 5. Conmutatividad del Join y del Producto cartesiano El DBA El SMBD Manejo de Memoria Restauración Concurrencia Diccionario Datos Proc. Consultas Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 25. Axiomas del Algebra Relacional 6. Distributividad de la selección con respecto al Join El DBA y al Producto cartesiano El SMBD Manejo de Memoria Restauración Concurrencia Este axioma permite empujar las selecciones hacia abajo en el arbol. Diccionario Datos Proc. Consultas Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 26. Axiomas del Algebra Relacional 7. Distributividad de la proyección con respecto al El DBA Join y al Producto cartesiano El SMBD Manejo de Memoria Restauración Concurrencia Diccionario Datos Este axioma permite empujar las proyecciones hacia abajo en el arbol. Proc. Consultas Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 27. Axiomas del Algebra Relacional 7. Distributividad de la proyección con respecto al El DBA Join y al Producto cartesiano El SMBD Manejo de Memoria Restauración Concurrencia Diccionario Datos Este axioma permite empujar las proyecciones hacia abajo en el arbol. Proc. Consultas Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 28. Axiomas del Algebra Relacional 8. Conmutatividad de la unión y la intersección El DBA 9. Asociatividad de la union, la intersección, y el El SMBD producto cartesiano Manejo de Memoria Restauración Concurrencia 10. Distributividad de la selección con respecto a la Diccionario Datos Unión y la Intersección Proc. Consultas Consultas 11. Distributividad de la proyección con respecto a la Unión y la Intersección Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 29. Axiomas del Algebra Relacional 12. Conversión del Producto Cartesiano en Join El DBA El SMBD Manejo de Memoria Restauración Si cond es una igualdad de atributos de R1 y R2 Concurrencia Diccionario Datos Proc. Consultas Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos
  • 30. Técnicas de optimización El DBA Heurísticas El SMBD • Se refiere a las mejores prácticas Manejo de Memoria • Viene de la experiencia de los expertos Restauración Costo Concurrencia Diccionario Datos • Transforma el árbol de ejecución usando diferentes técnicas (n transformaciones) Proc. Consultas Consultas • Estima los costos de cada Integridad transformación y se queda con la que tiene costo mínimo Seguridad Marzo 2012 Administración de Base de Datos
  • 31. Técnicas de control de concurrencia El DBA • Heurísticas – Se construye el árbol canónico El SMBD – Se transforma usando los axiomas del AR en el Manejo de Memoria siguiente orden Restauración 1. Aplicar el axioma o regla 1 2. Aplicar axiomas 2, 4, 6 y 10, para desplazar cada Concurrencia operación SELECT hacia abajo en el árbol de ejecución. Diccionario Datos 3. Aplicar axiomas 5 y 9, para reordenar los nodos hoja Proc. Consultas utilizando el siguiente criterio: a) Posicionar las relaciones con los SELECT más Integridad restrictivos de forma que sean ejecutadas en primer Seguridad lugar. Marzo 2012 Administración de Base de Datos 31
  • 32. Técnicas de control de concurrencia El DBA • Heurísticas (continuación) El SMBD 3. Aplicar axiomas 5 y 9, para reordenar los nodos Manejo de Memoria hoja utilizando el siguiente criterio: b) Verificar que las ordenaciones no produzcan productos Restauración cartesianos que no puedan convertirse en JOIN Concurrencia 4. Aplicar axioma 12, para combinar los SELECT con los PRODUCTOS CARTESIANOS, para formar una Diccionario Datos operación de JOIN Proc. Consultas 5. Aplicar axiomas 3, 4, 7, 11 para bajar en el árbol las operaciones PROJECT lo más que se pueda. Integridad Seguridad Marzo 2012 Administración de Base de Datos 32
  • 33. Técnicas de control de concurrencia El DBA • Ejercicio – Seleccionar los estudiantes que pasaron El SMBD Administración de base de datos en el semestre Manejo de Memoria 2-2009 Restauración Select Nombre Concurrencia From Estudiante E, Cursar C, Materia M Where E.CI = C.CI and Nota >=10, and Diccionario Datos M.Cod_Mat =C.Cod_Mat and M.Nombre = Proc. Consultas ‘Administración de base de datos’ and semester_cursa = ’2-2009’ Integridad Seguridad Marzo 2012 Administración de Base de Datos 33
  • 34. Factor de selectividad El DBA • Una vez que se ha construido el árbol de ejecución lógico se debe construir el físico El SMBD Manejo de Memoria • Es una técnica de estimación del tamaño de los resultados intermedios o vistas Restauración (cantidad de registros), por medio de una Concurrencia función de probabilidad Diccionario Datos • Se asume independencia y Proc. Consultas uniformidad en los valores de los atributos Integridad • Se aplica para las selecciones y los join Seguridad Marzo 2012 Administración de Base de Datos 34
  • 35. Factor de selectividad El DBA • Uniformidad – Es igualmente probable que una tupla Ti tenga El SMBD un valor C en el atributo Aj. Manejo de Memoria Se lee la Restauración probabilidad de – Los valores de Aj están distribuidos que las tuplas Concurrencia de Ti cumpla la uniformemente entre las tuplas. condición Ai= c Diccionario Datos • Independencia Proc. Consultas – Al ejecutarse la siguiente consulta Integridad se asume que la satisfacibilidad de que la condición cond1 es independiente a la Seguridad satisfacibilidad de la condición cond2. Marzo 2012 Administración de Base de Datos 35
  • 36. Factor de selectividad El DBA • Casos Base Los que cumplen la condición El SMBD Valores Manejo de Memoria totales Restauración Concurrencia Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 36
  • 37. El DBA • Casos base – Factor de selectividad del Join El SMBD Manejo de Memoria Restauración Concurrencia Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 37
  • 38. Ejemplo del uso del fs El DBA • Ejemplo – ¿Cuál es el factor de selectividad la condición El SMBD sexo = ‘F’ en la tabla empleado? Manejo de Memoria 1 fs ( Sexo ' F ' , Empleado ) 0 ,5 Restauración 2 – Si la tabla empleados contiene 300.000 Concurrencia registros ¿cuántos registros tiene la siguiente Diccionario Datos vista? Proc. Consultas T1 ( Empleado ) Sexo 'F ' Integridad T1 Empleado fs ( Sexo ' F ' , Empleado ) Seguridad T1 300 . 000 0 ,5 150 . 000 Marzo 2012 Administración de Base de Datos 38
  • 39. Costo de un Árbol de ejecución El DBA • Próxima clase – Costo de los Operadores físicos El SMBD • Join Manejo de Memoria • Order by Restauración • Project • Select Concurrencia Diccionario Datos – Evaluar el árbol de ejecución físico. Proc. Consultas • Materialización • Encausamiento Integridad Seguridad Marzo 2012 Administración de Base de Datos 39
  • 40. Clase de hoy – Modelo de costo El DBA – Costo de los operadores del Algebra Relacional El SMBD • Select Manejo de Memoria • Project. • Order By Restauración Concurrencia Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 40
  • 41. Modelo de Costos El DBA • Es una herramienta estadística formal para evaluar el costo de un plan físico de El SMBD ejecución. Manejo de Memoria • Se mide en función del tiempo y puede Restauración expresarse en términos de: Concurrencia – Accesos a disco Diccionario Datos – Tiempo del CPU – Costo de comunicación (Sist. Dist) Proc. Consultas – Tiempo de respuesta para un plan de Integridad evaluación de una consulta. Seguridad Marzo 2012 Administración de Base de Datos 41
  • 42. Modelo de Costo El DBA El SMBD Manejo de Memoria ¿Cuál es el costo más importante en las Restauración bases de datos centralizadas? Concurrencia Acceso a disco Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 42
  • 43. El DBA • Para calcular el costo de acceso a disco necesitamos. El SMBD – Tamaño a cada archivo de datos y vistas Manejo de Memoria • Número de registros • Tamaño de los atributos y los registros Restauración • Tamaño de los bloques Concurrencia – Factor de selectividad • Número de valores distintos, Diccionario Datos • mínimo y máximo de los atributos de búsqueda, Proc. Consultas – Métodos de acceso (organización del archivo) – Índices del archivo Integridad • números de niveles (altura) Seguridad • Tipo (primario, secundario, agrupado) Marzo 2012 Administración de Base de Datos 43
  • 44. Cálculo del espacio en disco requerido por una relación El DBA 1. Registros de longitud fija y no extensible N: el número de registro del archivo A El SMBD Ra: el tamaño en bytes de cada registro Manejo de Memoria B: Tamaño en bytes de cada bloque Restauración Concurrencia B NumBloques ( A) N fdb fdb Diccionario Datos Ra Proc. Consultas Integridad Se usa para las tablas base Seguridad Marzo 2012 Administración de Base de Datos 44
  • 45. Estimación de costos El DBA 2. Extensibles / Tamaño Fijo El SMBD N Ra Manejo de Memoria NumBloques ( A) B Restauración Concurrencia Se usa para las tablas vista o resultados Diccionario Datos intermedios Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 45
  • 46. Estimación de Costos El DBA 4. Tamaño variable El SMBD se usan las mismas fórmulas pero se Manejo de Memoria calcula un promedio de tamaño del registro Restauración Concurrencia RA tamaño promedio de un registro A, Diccionario Datos con técnic as de muestreo. Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 46
  • 47. Costo de operadores físicos El DBA • Selección El SMBD • Ordenamiento Manejo de Memoria • Proyección • Reunión Restauración Concurrencia Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 47
  • 48. Estimación de costos en operaciones físicas: Selección El DBA • Operación Selección El SMBD condicion (R) Manejo de Memoria – Selección sin índices Restauración – Selección con índices Concurrencia – Selección de igualdad Diccionario Datos – Selección de comparación Proc. Consultas – Selecciones complejas (Conjuntivas o Disyuntivas) Integridad Seguridad Marzo 2012 Administración de Base de Datos 48
  • 49. Selección sin índices El DBA • Considere una operación selección sobre un archivo A y: El SMBD Manejo de Memoria TB A : tamaño que ocupa la relación A Restauración en bloques de disco Concurrencia D : tiempo de acceso a disco Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 49
  • 50. Selección sin índices El DBA • Búsqueda lineal El SMBD TB A Manejo de Memoria Costo 2 Restauración Si la condición no es sobre la clave : Concurrencia Diccionario Datos Costo TB A Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 50
  • 51. Selección sin índice El DBA • Busqueda binaria – Si el archivo se ordena según el atributo clave El SMBD y la condición es una igualdad. Manejo de Memoria Restauración Costo log 2 (TB A ) Concurrencia – Si la selección no es de igualdad, o no es sobre Diccionario Datos un atribudo clave (y el archivo está ordenado Proc. Consultas según éste atributo) Integridad Costo log 2 (TB A ) (TB f 1) Seguridad TB f : Número de bloques que cumplen con la condición (se calculan con fs) Marzo 2012 Administración de Base de Datos 51
  • 52. Selección con índices El DBA El SMBD Manejo de Memoria • Asumimos que los índices son de tipo Restauración árbol B+ y la longitud del camino es Concurrencia siempre la altura del árbol. Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 52
  • 53. Selección de igualdad El DBA • Índice primario Se obtiene el número de niveles de índice + 1 El SMBD Manejo de Memoria • Índice agrupado Restauración s cos to niveles _ del _ indice Concurrencia fdb Diccionario Datos s fs ( c , R ) nr s : C ardinalid ad de s elec c ión del atributo de indexac ión Proc. Consultas • Índice secundario Integridad Seguridad cos to s niveles _ del _ indice Marzo 2012 Administración de Base de Datos 53
  • 54. Selección de comparación El DBA • Índice primario o agrupado – Si la comparación es Att > v o Att ≥ v se El SMBD puede obtener el primer valor de v en el Manejo de Memoria archivo de datos, de allí se explora hasta el final Restauración – Si la comparación Att < v o Att ≤ v no es Concurrencia necesario usar el índice. Diccionario Datos • Índice secundario Proc. Consultas – Sólo es necesario hallar el primer apuntador a v y recorrer la lista formada por las hojas para Integridad obtener los apuntadores a los diferentes Seguridad bloques del archivo de datos. Marzo 2012 Administración de Base de Datos 54
  • 55. Selecciones complejas El DBA • Conjuntivas (c1 and c2) - Índices Simples (índices diferentes por cada El SMBD atributo) Manejo de Memoria - Se verifica si hay un índice sobre alguno de los atributos, se busca sobre éste y se verifica si Restauración cumple las demás condiciones Concurrencia - El más económico es el que tiene el fs más bajo Diccionario Datos - Si hay un índice por cada atributo, se utilizan los distintos índices, se recuperan los elementos y Proc. Consultas luego se interceptan los tres conjuntos Integridad obtenidos. Seguridad Marzo 2012 Administración de Base de Datos 55
  • 56. Selecciones Complejas El DBA • Conjuntivas (Cont) • Índices Compuestos El SMBD • Sólo puede utilizarse si cada uno de los atributos Manejo de Memoria están en la condición de selección • El tipo de índice determina el uso de algoritmos Restauración de selección simples Concurrencia • Disyuntiva Diccionario Datos – Se realiza una búsqueda y se realiza la unión de éstas. Proc. Consultas – El hecho de que un sólo atributo no tenga Integridad índice implica una búsqueda lineal de datos. Seguridad Marzo 2012 Administración de Base de Datos 56
  • 57. Operación Proyección El DBA • Con duplicados El SMBD B’ Manejo de Memoria For each tupla t in B Restauración Guardar en B’ < t.At1, t.At2, …, t.Ati > B Concurrencia End Diccionario Datos Resultado tabla o relación con registros duplicados Proc. Consultas Integridad • Costo = TBB (recorrer la tabla B) Seguridad • Costo de resultado intermedio – TBB’ (guardar la tabla proyectada) Marzo 2012 Administración de Base de Datos 57
  • 58. Operación Proyección El DBA • Sin duplicados El SMBD • Basado en ordenamiento Manejo de Memoria Restauración For each tupla t in B Guardar en B’ < t.At1, t.At2, …, t.Ati > Concurrencia End Diccionario Datos Ordenar B’ en base a los atributos de proyección Proc. Consultas For each tupla t in B’ Guardar t en B’’ sii no existe t en B’’ Integridad End Seguridad Resultado tabla o relación donde los duplicados son eliminados Marzo 2012 Administración de Base de Datos 58
  • 59. Operación Proyección El DBA • Costo de proyección El SMBD Manejo de Memoria TB B TB B ' TB B ' log( TB B ' ) Restauración Concurrencia Ordenar B’ Recorrer B Diccionario Datos Generar B’ Proc. Consultas Integridad • Costo de almacenamiento Seguridad TB B '' Tabla proyectada sin duplicados Marzo 2012 Administración de Base de Datos 59
  • 60. Operación Proyección El DBA • Basado en HASH Se crea B’ El SMBD For each tupla tj in B’ Manejo de Memoria Aplicar f(tj) #se contruye una tabla hash Restauración en mp si tupla tj en f(ti) / ti = tj Concurrencia Descartar ti Diccionario Datos sino Proc. Consultas Guardar ti en f(ti) Integridad fsi Retornar tuplas en tabla hash Seguridad end Marzo 2012 Administración de Base de Datos 60
  • 61. Operación Proyección El DBA • Basado en HASH (costo) – Suponiendo que El SMBD Manejo de Memoria B– se puede almacenar en la tabla hash Restauración TB B TB B ' Concurrencia Sino Diccionario Datos Proc. Consultas TB B 3TB B ' Integridad Aunque este costo puede ser menor que el de ordenamiento, requiere memoria principal Seguridad + Costo de almacenar B’’ Marzo 2012 Administración de Base de Datos 61
  • 62. Operación Join El DBA • El operador Join se puede evaluar de varias maneras distintas El SMBD – Nested loop join Manejo de Memoria – Block Nested Loop Join Restauración – Merge sort join – Index Join Concurrencia – Hash Join Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 62
  • 63. Nested Loop Join El DBA El SMBD Manejo de Memoria Restauración Concurrencia For each tupla tA in A Diccionario Datos For each tupla tB in B If satisfy (tA, tB, Cond) Proc. Consultas Return (tA. tB) End Integridad End End Seguridad RA = cantidad de Costo = TBA + RA*TBB registro de A Marzo 2012 Administración de Base de Datos 63
  • 64. Block Nested Loop Join El DBA El SMBD Manejo de Memoria Restauración Concurrencia A B Diccionario Datos Este algorito se puede mejorar si se aprovechan los bloques de memoria disponibles Proc. Consultas Si se carga A por bloques el costo seria Integridad Costo = TBA + TBA*TBB Seguridad Si se tienen T bloques disponibles se dejan dos para entrada/salida TB A Costo TB A *TB B T- 2 Marzo 2012 Administración de Base de Datos 64
  • 65. Sort-Merge Join El DBA El SMBD Manejo de Memoria Restauración Concurrencia A B Diccionario Datos Si ambas tablas están ordenadas sobre los atributos del Join, el costo es el menor Proc. Consultas Costo = TBA + TBB Integridad Si no hay que agregar el costo de ordenación Seguridad Costo = TBA Log(TBA )+ TBB Log(TBB ) +TBA +TBB Marzo 2012 Administración de Base de Datos 65
  • 66. Index Join El DBA El SMBD Manejo de Memoria Restauración Concurrencia A B Diccionario Datos Se usa si la tabla de la derecha tiene un índice sobre el atributo del Join, el costo es el de leer A y buscar cada Proc. Consultas registro de A por el índice Integridad Costo = TB(A) + CostoBuscar*Ra Seguridad El costo de buscar depende del indice (ver operador select) Marzo 2012 Administración de Base de Datos 66
  • 67. Hash Join El DBA • Se dividen las tuplas de cada relación utilizando una función hash tal que: El SMBD ta A, tb B / part ( A , t a ) part ( B , t b ) i .e . h ( t a ) h (tb ) Manejo de Memoria Restauración Concurrencia Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 67
  • 68. Hash Join El DBA • h es una función que asigna a los atributos de join El SMBD los valores {0,1,..,n-1} Manejo de Memoria • Ha0 .. Ha(n-1) denota las particiones de A inicialmente vacías. Se colocan las tuplas en Hai Restauración con i = h(ta[atributos join]) Concurrencia • Hb0 .. Hb(n-1) denota las particiones de B inicialmente vacías. Se colocan las tuplas en Hbi Diccionario Datos con i = h(tb[atributos join]) Proc. Consultas • Al aplicar la misma función para ambos Integridad particionamientos, cada tupla de A y B que tengan resultados iguales de la función de asociación, Seguridad estarán en la misma partición Marzo 2012 Administración de Base de Datos 68
  • 69. Hash Join El DBA El SMBD Manejo de Memoria Restauración Concurrencia Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 69
  • 70. Video Join El DBA • Videos – Video 1 El SMBD – Video 2 Manejo de Memoria Restauración Concurrencia Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 70
  • 71. Calcular el costo de un árbol de ejecución El DBA • Una vez que el árbol este optimizado – Se cambian los operadores lógicos por físicos El SMBD p.e join por index join Manejo de Memoria – Si hay mas de un operador posible se debe Restauración verificar el menos costoso – Se calculan los costos de las operaciones por Concurrencia nodo, y el costo de almacenar resultados Diccionario Datos intermedios – Se suman los costos de todos los nodos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 71
  • 72. Ejercicio Jugador (DI, Nombre, Apellidos, Juegos(CodEq1, CodEq2, Temporada, FechaNac, Direccion) Fecha, Resultado, CodEquipoGana) El DBA DI: 9 bytes CodEq1: 4 bytes Nombre: 40 bytes CodEq2: 4 bytes El SMBD Apellidos: 40 bytes Temporada: 4 bytes, min : 1902, máximo FechaNac: 8 bytes 2011, valores diferentes, 110 Manejo de Memoria Direccion: 50 bytes Fecha: 8 bytes (162 valores distintos) Resultado: 8 bytes Restauración Num registros: 250.000 CodEquipoGana: 4 bytes (INDICE) Equipo( CodEq, NombreEq, FechaFund, Num registros: 18.000 Concurrencia Ciudad, Liga, Estadio) CodEq: 4 bytes Juega (DIJugador, CodEq, FechaIni, Diccionario Datos NombreEq: 40 bytes FechaFin, Posicion) FechaFund: 8 bytes DIJugador: 9 bytes Proc. Consultas Liga: 2 bytes (Nacional =0, Americana=1) CodEq: 4 bytes Estadio: 50 bytes FechaIni: 8 bytes (un promedio de 20 jug Integridad por año) Num registros: 30 FechaFin: 10 bytes Seguridad Posición: 20 bytes (9 valores distintos) Num registros: 875.000 Marzo 2012 Administración de Base de Datos 72
  • 73. El DBA • Consulta: Nombre, apellido y equipo de los jugadores que han participado en la El SMBD temporada 2009 en juegos ganados, y Manejo de Memoria que han jugado en primera base. Restauración – Dé el árbol canónico para q. – Dé el árbol optimizado heurísticamente. Concurrencia Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 73
  • 74. El DBA • Suponga que el SMBD se caracteriza por – Disponer de 20 bloques de memoria principal El SMBD para las operaciones AR Manejo de Memoria – Cada bloque ocupa 1024 bytes Restauración – Disponer de los operadores físicos vistos en clase Concurrencia – Materializar los resultados intermedios. Asuma Diccionario Datos registros fijos extensibles para las tablas intermedias y no extensibles para las relaciones Proc. Consultas base Integridad – Indices primarios para las claves primarias, Seguridad todos tienen 4 de altura Marzo 2012 Administración de Base de Datos 74
  • 75. Ejemplo de plan de ejecución Caso Oracle El DBA El SMBD SELECT e.employee_id, e.last_name, e.salary, Manejo de Memoria d.department_name, l.city FROM employees e, departments d, locations l Restauración WHERE e.department_id = d.department_id AND d.location_id = l.location_id Concurrencia AND l.city = 'Oxford' Diccionario Datos AND e.salary > 10500 AND e.last_name LIKE '%e%'; Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 75
  • 76. El DBA El SMBD Manejo de Memoria Restauración Concurrencia Diccionario Datos Proc. Consultas Integridad Seguridad Marzo 2012 Administración de Base de Datos 76