Bases de Datos I. Cursada Clase 5: Optimización de Consultas

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Bases de Datos I. Cursada Clase 5: Optimización de Consultas"

Transcripción

1 Bases de Datos I Cursada 2008 Clase 5: Optimización de Consultas Facultad de Ciencias Exactas Universidad Nac. Centro de la Pcia. de Bs. As. DISEÑO Y OPTIMIZACIÓN DE BASES DE DATOS Objetivo Mejorar los tiempos de respuesta en un sistema de gestión de bases de datos relacional. DISEÑO Y OPTIMIZACIÓN DE BASES DE DATOS Donde incide la optimización? Factores a tener en cuenta: El costo de comunicación de acceso a almacenamiento secundario. El costo de almacenamiento. El costo de computación. El optimizador interviene también en las actualizaciones y borrados!!!. 1

2 DISEÑO Y OPTIMIZACIÓN DE BASES DE DATOS Motivación: Crítica a los primeros sistemas basados en el modelo relacional: bajo rendimiento de las consultas Investigación y desarrollo de algoritmos eficientes para procesar consultas En un sistema no relacional... Consultas expresadas en lenguaje procedural de bajo nivel El usuario selecciona la estrategia de ejecución: optimización manual Decide las operaciones necesarias y su orden de ejecución Si se equivoca, el sistema no puede mejorar la situación Debe tener conocimientos de programación En un sistema relacional... Consultas expresadas con SQL: QUÉ datos y no CÓMO recuperarlos El DBMS selecciona la mejor estrategia de ejecución y tiene mayor control sobre el rendimiento del sistema DISEÑO Y OPTIMIZACIÓN DE BASES DE DATOS La optimización [automática] es: Un desafío obligatorio si se debe lograr un tiempo de ejecución de consultas aceptable Una oportunidad el alto nivel semántico de una expresión relacional permite su optimización antes de la ejecución Procesamiento de Consultas Actividades involucradas en la recuperación de datos de la BD Optimización de Consultas Elección de una estrategia de ejecución eficaz para procesar cada consulta sobre la base de datos Objetivo de la optimización de consultas Elegir la estrategia de ejecución que minimiza el uso de los recursos En general, no se garantiza que la estrategia elegida por el DBMS sea la óptima, pero seguro que será una estrategia razonablemente eficiente OPTIMIZACIÓN DE CONSULTAS Formas alternativas de evaluar una consulta Hallar expresiones equivalentes Algoritmos elaborados para cada operación Diferencia de costo entre una buena y una mala forma de evaluar una consulta muy significativa!! Para estimar el costo de las operaciones: Información estadística sobre las relaciones: Cantidad de tuplas, Cantidad de repeticiones de cada valor de cada atributo, Frecuencia de acceso a cada relación, a conjuntos de tuplas, etc. Estimación estadística de los costos de hallar resultados intermedios, para las expresiones complejas. 2

3 OPTIMIZACIÓN DE CONSULTAS Las relaciones generadas por expresiones equivalentes El mismo conjunto de atributos El mismo conjunto de tuplas Tuplas y atributos pueden ser obtenidos en distinto orden. Bibliografía Principal: Database System Concepts. 5ª edición Silverschatz, Korth y Sudarshan, 2005 OPTIMIZACIÓN DE CONSULTAS Generación de un plan de evaluación de cada consulta involucra: Generación de una expresión lógicamente equivalente reglas de equivalencia Analizar expresiones resultantes para obtener planes alternativos Elegir el que ofrezca el menor costo costo estimado Proceso de optimización basado en costos. Consulta representación interna proceso de optimización elección de índices/órdenes # de accesos a disco costo TRANSFORMACIÓN DE EXPRESIONES Modelo relacional Álgebra relacional Dos expresiones algebraicas son equivalentes si generan el mismo conjunto de tuplas, para cualquier estado de la base de datos. Recordar el orden de las tuplas y de los atributos es irrelevante En SQL Bolsas Dos expresiones en álgebra de bolsas son equivalentes si generan las mismas bolsas, para cualquier estado de la base de datos. Recordar el orden de las tuplas y de los atributos es irrelevante 3

4 REGLAS DE EQUIVALENCIA Expresiones diferentes son equivalentes si cada una puede reemplazar a la otra. 1. Selección Conjuntiva secuencia de selecciones individuales. σ θ ( ) ( ( )) 1 θ E = σ E 2 θ σ 1 θ 2 2. Selección es conmutativa. σ θ ( σ ( E)) ( ( E)) 1 θ = σ 2 θ σ 2 θ1 REGLAS DE EQUIVALENCIA 3. Secuencia de proyecciones sólo tiene sentido la última. Π L ( Π ( ( ( E)) )) ( E) 1 L K Π 2 Ln K = Π L1 Selección puede combinarse con productos cartesianos y ensambles generales (Theta join). a. σ θ (E 1 X E 2 ) = E 1 θ E 2 b. σ θ1 (E 1 θ2 E 2 ) = E 1 θ1 θ2 E 2 REGLAS DE EQUIVALENCIA 5. Ensambles naturales y generales son conmutativos. E1 θ E2 = E2 θ E1 6. (a) Ensamble Natural es asociativo (E1 E2) E3 = E1 (E2 E3) (b) Ensambles generales son asociativos de la siguiente forma: (E1 θ1 E2) θ2 θ3 E3 = E1 θ1 θ3 (E2 θ2 E3) θ2 involucra atributos sólo de E2 y E3. 4

5 REGLAS DE EQUIVALENCIA 7. Selección distributiva sobre los ensambles generales, bajo las siguientes condiciones: (a) Cuando θ0 involucra sólo atributos de una de las expresiones a ensamblar (sea E1). σ θ0 (E1 θ E2) = (σ θ0 (E1)) θ E2 (b) Cuando θ1 involucra sólo los atributos de E1 y θ2 sólo los de E2. σ θ1 θ2 (E1 θ E2) = (σ θ1 (E1)) θ (σ θ2 (E2)) REGLAS DE EQUIVALENCIA 8. Proyección es distributiva para el ensamble general en los siguientes casos: (a) si Π involucra sólo atributos de L1 L2 (L1 y L2 conj. de atributos de E1 y E2, inters. no vacía): L1 L2 1 θ 1 θ 2 E ( E E 2 ) = ( L ( E1)) ( L ( 2 )) (b) Sea el ensamble E1 θ E2. Sean L1 y L2 conjuntos de atributos de E1 y E2, respectivamente. Sean L3 y L4 conjuntos de atributos de E1 y E2 respectivamente, involucrados en la condición θ, pero no en L1 L2. ( E E ) = (( ( E )) ( ( E ))) L 1 L2 1 θ 2 L L L L 1 L L θ REGLAS DE EQUIVALENCIA 9. Unión e intersección son conmutativas E1 E2 = E2 E1 E1 E2 = E2 E1 Recordar la diferencia no es conmutativa!! 10. Unión e intersección son asociativas. (E1 E2) E3 = E1 (E2 E3) (E1 E2) E3 = E1 (E2 E3) 11. Proyección es distributiva sobre la unión Π L (E1 E2) = (Π L (E1)) (Π L (E2)) 5

6 REGLAS DE EQUIVALENCIA 12. (a) Selección es distributiva sobre, y. σ θ (E1 E2) = σ θ (E1) σ θ (E2) (lo mismo para y ) (b) σ θ (E1 E2) = σ θ (E1) E2 (lo mismo para, pero no para ) 13. Otras. ESTRATEGIAS GENERALES DE OPTIMIZACIÓN Realizar las selecciones tan pronto como sea posible. Combinar ciertas selecciones con un producto cartesiano anterior, para realizar una asociación o un JOIN. Combinar secuencias de operaciones unarias, como selecciones y proyecciones. Detectar subconsultas con resultados equivalentes que puedan reutilizarse a lo largo de una misma consulta. ESTRATEGIAS GENERALES DE OPTIMIZACIÓN Mediante sus propiedades, desplazar cada selección simple lo más abajo posible del árbol. Mediante sus propiedades, desplazar las proyecciones lo más abajo posible del árbol. Usar las propiedades de proyección y selección para combinar cascadas de proyecciones y selecciones en una selección sencilla, una proyección sencilla o una selección seguida de una proyección (hacer todas las proyecciones y a continuación todas las selecciones que afecten a una misma relación es mejor que alternar dichas operaciones) 6

7 EJEMPLO DE TRANSFORMACIÓN 1 Consulta: Obtener todos los nombres de los clientes que tienen una cuenta en alguna sucursal del banco localizada en Brooklin. Π customer_name (σ branch_city = Brooklyn (branch (account depositor))) Transformación usando la regla 7a. Π customer_name ((σ branch_city = Brooklyn (branch)) (account depositor)) Ubicar la selección tan tempranamente como sea posible reduce el tamaño de la relación a ensamblar!! EJEMPLO DE TRANSFORMACIÓN 2 Consulta: Obtener los nombres de todos los clientes con cuenta en alguna sucursal de Brooklyn, cuyo saldo sea > $1000. Π customer_name ((σ branch_city = Brooklyn balance > 1000 (branch (account depositor))) Transformación usando la regla 6a: Π customer_name ((σ branch_city = Brooklyn balance > 1000 (branch account)) depositor) Ahora puede usarse la regla que aconseja ejecutar las selecciones tan tempranamente como sea posible en la subconsulta σ branch_city = Brooklyn (branch) σ balance > 1000 (account) EJEMPLO DE TRANSFORMACIÓN 2 (cont.) 7

8 EJEMPLO DE TRANSFORMACIÓN 3 Para las relaciones R1, R2 y R3 (R1 R2) R3 = R1 (R2 R3 ) Si R2 R3 es voluminosa y R1 R2 es más pequeña, se elige (R1 R2) R3 Así se calcula y almacena una relación transitoria de menor tamaño. ASPECTOS CLAVE Diversos enfoques y muchos detalles para considerar Es un problema clásico de búsqueda/optimización! No ha sido resuelto completamente aún! Los principales puntos a tener en cuenta: Las reglas algebraicas y su uso en las transformaciones de queries. Decidir sobre el orden en los ensambles. Estimar el costo de los planes de ejecución y el espacio de los resultados intermedios. OPTIMIZADORES DE CONSULTAS Usan reglas de equivalencia para generar sistemáticamente expresiones equivalentes a la dada. Conceptualmente generan todas las expresiones equivalentes ejecutando repetidamente los siguientes pasos, hasta que no se pueden hallar más expresiones: Para toda expresión encontrada, use todas las reglas de equivalencia aplicables agregue las nuevas expresiones al conjunto de expresiones ya halladas Enfoque sumamente costoso en tiempo y espacio!! 8

9 OPTIMIZADORES DE CONSULTAS Requerimientos de espacio pueden reducirse compartiendo subexpresiones comunes Requerimientos de tiempo Pueden reducirse evitando generar algunas expresiones PLAN DE EVALUACIÓN Decide que algoritmo es usado para cada operación, y la coordinación en la ejecución de las operaciones ELECCIÓN DEL PLAN DE EVALUACIÓN Considera la interacción de las técnicas de evaluación el algoritmo más económico para cada operación no siempre es la mejor elección. Optimizadores de consultas incorporan elementos de los dos enfoques siguientes: 1. Buscan sobre todos los planes y eligen el mejor en función de su costo (costoso!!) 2. Usan heurísticas para elegir un plan. 9

10 OPTIMIZACIÓN HEURÍSTICA Transforma el árbol de la consulta que típicamente mejora el desempeño (aunque no necesariamente en todos los casos) : Ejecución de selecciones tempranamente (reduce el número de tuplas) Ejecución de proyecciones tempranamente (reduce la cantidad de atributos) Ejecutar las selecciones y ensambles más restrictivos antes que otras operaciones similares. Algunos sistemas usan sólo este enfoque; otros una combinación con estrategias basadas en costos. PASOS EN LA OPTIMIZACIÓN HEURÍSTICA TÍPICA 1. Transformar selecciones conjuntivas en una secuencia se selecciones simples Regla 1 2. Desplazar las selecciones para que puedan ser ejecutadas lo más tempranamente posible Reglas 2, 7a, 7b, Ejecutar selecciones y ensambles restrictivos lo antes posible Regla 6 PASOS EN LA OPTIMIZACIÓN HEURÍSTICA TÍPICA (cont) 4. Reemplazar el producto cartesiano + selección, por ensamble Regla 4a 5. Transformar y desplazar tanto como sea posible las proyecciones cerca de las relaciones apropiadas Reglas 3, 8a, 8b, Identificar aquellos subárboles cuyas operaciones pueden ser secuencializadas (pipelined), y ejecutadas en fases secuenciales (la entrada de una es la salida de la previa). 10

11 INFORMACIÓN ESTADÍSTICA Necesaria para estimar el costo de ejecución de una consulta n R : número de tuplas en una relación R. b R : número de bloques conteniendo tuplas de R. t R : tamaño de la tupla de R. f R : factor de bloqueo de R. V(A, R): número de valores diferentes del atributo A en la relación R (equivale a A (R) ) ESTIMACIÓN DE TAMAÑOS Si las tuplas de R están en un único archivo, σ A=v (R) n R / V(A,R) : número de registros que satisfacen la condición Condición de igualdad sobre un atributo clave tamaño estimado = 1 σ A V (R) (caso σ A V (r) es simétrico) C = cant. de tuplas que cumplen la condición. min(a,r) y max(a,r) pueden ser metadatos c = 0 si V < min(a,r) c = = n b f R R R V min( A, R) n R. max( A, R) min( A, R) Tamaño de las tuplas igual al de R Si no hay información estadística, se asume c=n R / 2. ESTIMACIÓN DE TAMAÑOS Producto Cartesiano R x S n R.n S tuplas; cada una de tamaño t R + t S bytes. Si esq(r) esq(s) =, luego R S es equivalente a R x S. Si esq(r) esq(s) es una clave para R, una tupla de S tendrá como máximo una tupla que aparee en R El número de tuplas en R S no es mayor que el de S. Si esq(r) esq(s) en S es una FK referenciando a R,el número de tuplas en R S es el mismo de S. Tamaño de las tuplas t R+ t S - esq(r) esq(s) 11

12 ESTIMACIÓN DE TAMAÑOS Si esq(r) esq(s) = {A} no es una FK para R ó S. Si se asume que cada tupla t en R produce tuplas en R S, la cantidad de tuplas en R S puede estimarse en: nr ns V( A, S) Si la reversa es verdadera: nr ns V( A, R) La menor de estas cantidades probablemente será la más acertada!! ESTIMACIÓN DE TAMAÑOS Proyección A (R) = V(A,R) Tamaño de las tuplas t R.A Operaciones de conjuntos Unión/Intersección de selecciones sobre la misma relación σ θ1 (R) σ θ2 (R) puede reescribirse σ θ1 θ2 (R) Tamaño de las tuplas = t R Sobre diferentes relaciones n R S = n R + n S. n R S = mín (n R, n S ) n R S = n R Estos cálculos indican cotas superiores!! ESTIMACIÓN DE CANTIDAD DE VALORES DISTINTOS Selección σ θ (R) Si θ es del tipo A=valor V(A,σ θ (R)) = 1. Si θ es del tipo A = v1 V A = v2 V A = v3 V(A,σ θ (R)) = cant. valores especificados. Si θ es del tipo A op R V(A,σ θ (R)) = V(A.R) * s s es la selectividad de la selección: probabilidad de que una tupla satisfaga la condición Otros casos mín(v(a,r), n σθ (R) ) Mejor estimación teoría de probabilidades, pero estos cálculos generalmente funcionan bien!! 12

13 ESTIMACIÓN DE CANTIDAD DE VALORES DISTINTOS Ensambles R Si todos los atributos en A son de R V(A, R S) = mín (V(A,R), n R S ) S Si A tiene atributos A1 de R y A2 de S, V(A,R S) = mín(v(a1,r)*v(a2 A1,S), V(A1 A2,R)*V(A2,S), n R S ) Mejor estimación teoría de probabilidades, pero estos cálculos generalmente funcionan bien!! ESTIMACIÓN DE CANTIDAD DE VALORES DISTINTOS Proyección son los mismos en A (R) que en R. Lo mismo para los atributos de agrupamiento. Para valores agregados Para min(a) y max(a), la cantidad de valores distintos puede estimarse min(v(a,r), V(G,R)) donde G es el conjunto de atributos de agrupamiento Para otras funciones de agregación asumiendo todos los valores distintos V(G,R) OPTIMIZACIÓN DE CONSULTAS Y VISTAS MATERIALIZADAS Reescritura de consultas para usar vistas materializadas (VM): Sea una VM V = R S ya obtenida El usuario provee R S T Se puede reescribir V T Costos de ambas alternativas cual conviene? Reemplazo del uso de una VM por la definición de la vista: Sea una VM V = R S sin índices definidos sobre ella El usuario provee σ A=10 (V). Suponiendo que S tiene un índice sobre el atributo común B y R uno sobre A. El mejor plan? reemplazo de V por R S σ A=10 (R) S El optimizador debería ser extendido para que pueda considerar las alternativas anteriores y elegir la mejor. 13

14 ÍNDICES REALMENTE importantes para disminuir el tiempo de procesamiento de una consulta. Supóngase la relación Persona (nombre, edad, ciudad) Barrido Secuencial del archivo Persona puede tomar mucho tiempo SELECT * FROM Persona WHERE nombre = Martinez ÍNDICES Crear un índice sobre nombre: Árboles B+ (por ej. con fan-out de 100 y max 4 niveles!) Adamoli Benegas Coronel. Martinez. CREACIÓN DE ÍNDICES Sintaxis: CREATE INDEX nombreindice ON Persona(nombre) 14

15 CREACIÓN DE ÍNDICES Pueden crearse índices para más de un atributo: Ejemplo: CREATE INDEX otroindice ON Persona (edad, ciudad) SELECT * Ayudaría para hacer: FROM Persona WHERE edad = AND ciudad = Tandil SELECT * Pero no en: FROM Persona WHERE ciudad = Tandil CREACIÓN DE ÍNDICES Los índices pueden ayudar en consultas de rango: CREATE INDEX edadindice ON Persona (edad) Los árboles B+ ayudan en: SELECT * FROM Persona WHERE edad > AND edad < Entonces, por qué no crear índices para todo (o casi)? CREACIÓN DE ÍNDICES Cómo se implementarían? σ π Selección ( ) Projección ( ) Join ( >< ) Diferencia Unión Agregación (SUM, MIN, etc.) y GROUP BY 15

16 ESQUEMA PARA EJEMPLOS Compra (Clte:string, vendedor: string, producto: integer), Persona (nombre:string, ciudad:string, tel: integer) Compra Cada tupla 40 bytes, 100 tuplas por pág, 1000 pág tuplas, tamaño del archivo 4MB. Persona: Cada tupla 50 bytes, 80 tuplas por pág, 500 pág tuplas, archivo 2MB. SELECCIONES SIMPLES Son de la forma σ P. atr valor ( P ) Sin índice, desordenado: Debe barrer toda la relación; el costo es M (#pág en P). Con índice sobre el atributo de selección: Se usa el índice para encontrar el conjunto de entradas que salisfacen la condición, y luego se recupera el registro de datos (Importante: índice con Hash sólo es eficiente para selecciones por igualdad!) Estimación del tamaño del resultado: (Tamaño de P) * factor de reducción op SELECT * FROM Persona P WHERE P.tel < 543% USO DE ÍNDICES PARA SELECCIONES SIMPLES Costo depende de la cantidad de tuplas que satisfacen la condición, y del orden del archivo. Costo de encontrar las entradas aptas (pequeño generalmente) + costo de recuperar registros. Si se asume equidistribución de los teléfonos, y el 50% de las tuplas responden, (500 pág, tuplas). Con un índice sobre un archivo ordenado, el costo es de aprox. 500 I/O; si está desordenado, alrededor de I/O! Mejora para el primer caso: Buscar los registros en forma ordenada para asegurarse de visitar cada pág. una sola vez. 16

17 USO DE ÍNDICES PARA SELECCIONES GENERALES Ejemplo: Sea ciudad= Tandil AND tel< 543% Puede usarse un índice sobre hash por ciudad y luego chequear que cada entrada recuperada tenga tel < 543%. O puede ser un índice sobre árbol B ó B+ sobre tel, y luego verificar que cada entrada tenga ciudad= Tandil. Encontrar el camino más restrictivo y luego aplicar verificaciones para los atributos que no se usaron con el índice USO DE ÍNDICES PARA SELECCIONES GENERALES Otra forma: Obtener los conjuntos de referencias a registros para cada atributo, usando cada índice disponible. Hallar la intersección de las referencias. Recuperar los registros y verificar la condición sobre los atributos remanentes. USO DE ÍNDICES PARA SELECCIONES GENERALES Si hay muchas tuplas con P.tel > 543%, usando un índice sobre tel y ordenando las tuplas recuperadas puede ser costoso! Si el archivo está ordenado el costo puede ser menor. SELECT P.nombre, FROM Persona P Where P.tel > 543% GROUP BY P.nombre 17

18 USO DE ÍNDICES PARA SELECCIONES GENERALES Cuando existen claves de búsqueda múltiples: Recuperar los registros de Persona con tel> 543% y ciudad= Tandil puede ser más eficiente mediante uso de un índice con dominio estructurante el par de atributos, que usar un par de índices! Si ambas condiciones son de rango, índices de arbol sobre cualquier permutación de los atributos puede ser mejor. En este ejemplo, es mejor un índice por <ciudad, tel>! (camino más restrictivo) SELECT P.nombre, count(*) FROM Persona P Where P.tel > 543% GROUP BY P.nombre USO DE ÍNDICES PARA PROYECCIONES Dos pasos: (1) remover atributos no deseados, (2) remover duplicados del resultado. Refinamientos para el 2do paso: Si hubiese algún índice para todos los atributos deseados, se puede hacer un barrido del índice solamente. Si el índice contiene un subconjunto de los atributos deseados, se pueden remover los duplicados localmente. SELECT DISTINCT P.nombre, P.tel FROM Persona P QUERIES SÓLO-ÍNDICE Muchas consultas pueden responderse sin acceder al archivo, si hay un índice apropiado: Ejemplos: Índice por <nombre> para SELECT P.nombre, count(*) FROM Persona P GROUP BY P.nombre Índice (árbol) por <P.nombre,P.tel> para SELECT P.nombre, MIN(P.tel) FROM Persona P GROUP BY P.nombre 18

19 ELECCIÓN DE ÍNDICES Qué índices deberían crearse? Qué relaciones deberían tener índices? Qué atributos debería utilizar para crearlos (dominio estructurante del índice) Cuántos deberían crearse? Que tipo de índice es más conveniente para cada caso (prim./sec.?, de agrup?, un nivel/multinivel??) Qué soporte para cada índice? ELECCIÓN DE ÍNDICES Un enfoque: considerar las consultas más frecuentes (esto puede ser variable en el tiempo) Considerar el mejor plan de acuerdo con los índices ya creados, y analizar si hay mejoras agregando nuevos índices. Si es así, crearlos. Esto implica conocer la forma en que el DBMS evalúa las consultas y crea los planes de ejecución. Antes de crearlos analizar el impacto que producen las actualizaciones propagadas!! ELECCIÓN DE ÍNDICES Entender la naturaleza de la operatoria del sistema y los objetivos de desempeño es esencial para desarrollar un buen diseño. Atributos incluidos en las cláusulas WHERE son candidatos a dominios estructurantes de índices Condición por igualdad sugiere hash Condición de rango sugiere árbol Archivos ordenasdos mejoras las búsquedas por rangos, y las de igualdad si hay muchas repeticiones 19

20 ELECCIÓN DE ÍNDICES Claves de búsqueda de varios dominios pueden ser útiles cuando el WHERE involucra varias condiciones El orden de los atributos es importante! Construir índices que permitan resolver consultas sóloíndice. Tratar de elegir índices útiles para tantas consultas como sea posible. Ordenar el archivo es una decisión importante sólo un indice asociado a este orden! El mantenimiento de los índices suma costos! 20

Procesamiento de consultas (capítulo 13 y 14 del libro)

Procesamiento de consultas (capítulo 13 y 14 del libro) Procesamiento de consultas (capítulo 13 y 14 del libro) El procesamiento de consulta corresponde a todos los procesos relacionados con la extracción de datos en una base de datos, incluyendo la traducción

Más detalles

Optimización. Bibliografía: Fundamentos de bases de datos Korth, Silberschatz

Optimización. Bibliografía: Fundamentos de bases de datos Korth, Silberschatz Optimización Bibliografía: Fundamentos de bases de datos Korth, Silberschatz Conceptos básicos Dada una consulta, existen diferentes formas (estrategias) de calcular la respuesta. Los usuarios generalmente

Más detalles

Bases de Datos 2. Teórico

Bases de Datos 2. Teórico Bases de Datos 2 Teórico Cómo se resuelven las consultas? Haga clic para modificar el estilo de texto del patrón Segundo nivel Tercer nivel Cuarto nivel Quinto nivel Estrategias usuales de los optimizadores

Más detalles

Procesamiento y Optimización de Consultas

Procesamiento y Optimización de Consultas 16/12/2011 s Procesamiento y Optimización de Consultas Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla diciembre 2011 s Objetivos

Más detalles

8. Procesamiento y optimización de consultas

8. Procesamiento y optimización de consultas 8. Procesamiento y optimización de consultas Objetivos Comprender las tareas de procesamiento y optimización de consultas realizadas por un sistema gestor de bases de datos relacional. Conocer reglas heurísticas

Más detalles

Procesamiento y Optimización de Consultas

Procesamiento y Optimización de Consultas 12/12/2013 Procesamiento y Optimización de Consultas Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla diciembre 2012 Objetivos

Más detalles

Procesamiento y Optimización de Consultas

Procesamiento y Optimización de Consultas 30/09/2016 s Procesamiento y Optimización de Consultas Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla septiembre 2016 s Objetivos

Más detalles

12. Procesamiento y Optimización de Consultas

12. Procesamiento y Optimización de Consultas 12. Procesamiento y Optimización de Consultas Objetivos Comprender las tareas de procesamiento y optimización de consultas realizadas por un sistema gestor de bases de datos relacional. Conocer reglas

Más detalles

AR - Marco General. Álgebra Relacional AR - SELECT. AR - SELECT - Propiedades. 19/Agosto/2016

AR - Marco General. Álgebra Relacional AR - SELECT. AR - SELECT - Propiedades. 19/Agosto/2016 AR - Marco General Marco General 19/Agosto/2016. Lenguaje formal utilizado en el modelo relacional Permite a usuarios especificar consultas sobre instancias de relaciones El resultado de una consulta es

Más detalles

Organización y Acceso a Datos

Organización y Acceso a Datos Organización y Acceso a Datos Referencias: capítulos 5 y 6 de Fundamentals of Database Systems CSI-INCO Fundamentos de Bases de Datos 1 Organización física de datos leído usando BUFFER ubicados en forman

Más detalles

Organización y acceso a los datos (continuación)

Organización y acceso a los datos (continuación) Organización y acceso a los datos (continuación) Bases de Datos 2 - Tecnologo de Informatica Outline 1 Recapitulemos Organización y Acceso a Datos 2 Estructuras de indexación Conceptos básicos Índices

Más detalles

Algebra Relacional Algebra Relacional

Algebra Relacional Algebra Relacional Álgebra relacional Conjunto de operaciones usadas para manipular relaciones. Estas operaciones toman relaciones como operandos y regresan relaciones que a su vez pueden ser manipuladas. MR es cerrado.

Más detalles

Algebra Relacional. Bases de Datos 2 - Tecnologo de Informatica. BD2 - Algebra Relacoinal

Algebra Relacional. Bases de Datos 2 - Tecnologo de Informatica. BD2 - Algebra Relacoinal Algebra Relacional Bases de Datos 2 - Tecnologo de Informatica Outline 1 Introducción Vision general 2 Operadores Operaciones relacionales unarias Operaciones de la teoría de conjuntos Operadores derivados

Más detalles

En la terminal de micros de Retiro se cuenta con un sistema con el siguiente esquema de base de datos:

En la terminal de micros de Retiro se cuenta con un sistema con el siguiente esquema de base de datos: Ejercicio Integrador de Procesamiento y Optimización de Consultas En la terminal de micros de Retiro se cuenta con un sistema con el siguiente esquema de base de datos: Micro(numMicro, marca, numempresa)

Más detalles

Bases de datos 1. Teórico: Algebra Relacional

Bases de datos 1. Teórico: Algebra Relacional Bases de datos 1 Teórico: Algebra Relacional ALGEBRA RELACIONAL Conjunto de operadores para consultar BDs Relacionales. Operaciones relacionales unarias: Selección y Proyección Operaciones de álgebra relacional

Más detalles

SQL. Amparo López Gaona. México, D.F. Noviembre 2003

SQL. Amparo López Gaona. México, D.F. Noviembre 2003 Amparo López Gaona México, D.F. Noviembre 2003 Introducción El lenguaje SQL (Structured Query Language) es el lenguaje estándar para trabajo con bases de datos relacionales. Permite la definición, acceso

Más detalles

Resumen de las clases 6 y 9 de junio

Resumen de las clases 6 y 9 de junio Resumen de las clases 6 y 9 de junio Avance general de la materia En estas dos clases se vio: Un repaso, con ejercicios, de la materia de índices. Una introducción a la arquitectura de procesamiento de

Más detalles

CC42A: Bases de Datos Auxiliar: Optimizacion Consultas SQL

CC42A: Bases de Datos Auxiliar: Optimizacion Consultas SQL CC42A: Bases de Datos Auxiliar: Optimizacion Consultas SQL Rodrigo Paredes Moraleda 23 de junio de 2002 1. Caso de estudio Considere el siguiente esquema: CLIENTE{CLI ID, CLI NOMB, CLI RENTA ANUAL, CLI

Más detalles

La eficacia, representación fiel de la realidad, se consigue a través de un buen diseño lógico global de la base de datos

La eficacia, representación fiel de la realidad, se consigue a través de un buen diseño lógico global de la base de datos 1.- Objetivo del diseño físico 2.- Metodología de desarrollo de bases de datos relacionales 3.- Pasos a seguir dentro del diseño físico - Traducir el modelo lógico de la base de datos al SGBD seleccionado.

Más detalles

Optimización de Consultas

Optimización de Consultas Optimización de Consultas Ejercicios simples Base de Datos, DC-FCEyN-UBA Rosana Matuk 13 de octubre de 2016 Rosana Matuk (DC-FCEyN-UBA) Optimización 13 de octubre de 2016 1 / 32 Esquema General 1 Introducción

Más detalles

Bases de Datos. Álgebra Relacional

Bases de Datos. Álgebra Relacional Álgebra Relacional Álgebra Relacional Lenguajes de acceso a BD Álgebra Relacional Lenguaje procedimental (se indica qué obtener y cómo obtenerlo) Lenguajes de Usuario SQL (Structured Query Language), basado

Más detalles

SQL: Lenguaje de Interrogación Estructurado

SQL: Lenguaje de Interrogación Estructurado SQL: Lenguaje de Interrogación Estructurado SQL Es el lenguaje para Bases de Datos Relacionales más usado Es un lenguaje declarativo: QUÉ no CÓMO El núcleo fundamental se basa en el Algebra Relacional,

Más detalles

Operador Restricción

Operador Restricción Algebra Relacional Conjunto de operadores que opera sobre relaciones Cada uno de estos operadores toma una o dos relaciones como entrada y produce una nueva relación como salida. Las relaciones originales

Más detalles

Unidad 3. Álgebra Relacional y Cálculo Relacional

Unidad 3. Álgebra Relacional y Cálculo Relacional Unidad 3 Álgebra Relacional y Cálculo Relacional Álgebra Relacional Definición de Álgebra Álgebra es un sistema matemático que está formado por: Operandos. Valores o variables con los cuáles se pueden

Más detalles

Objetivo : Determinar la forma en que se hará efectiva la persistencia de las relaciones y sus tuplas (datos) en almacenamiento secundario.

Objetivo : Determinar la forma en que se hará efectiva la persistencia de las relaciones y sus tuplas (datos) en almacenamiento secundario. Fuente : Database Systems: a practical approach to design, implementation and management. 4º edición. T. Connolly, C. Begg. Objetivo : Determinar la forma en que se hará efectiva la persistencia de las

Más detalles

Teoría de Bases de Datos! Juan L. Reutter! Pontificia Universidad Católica de Chile

Teoría de Bases de Datos! Juan L. Reutter! Pontificia Universidad Católica de Chile Teoría de Bases de Datos Juan L. Reutter Pontificia Universidad Católica de Chile Las bases de datos están presentes en todo lo que hacemos Las bases de datos están presentes en todo lo que hacemos Qué

Más detalles

Oracle Database 12c SQL and PLSQL Fundamentals

Oracle Database 12c SQL and PLSQL Fundamentals Oracle Database 12c SQL and PLSQL Fundamentals DESCRIPCION MODULOS DE CAPACITACION Introducción Información general sobre 12c de base de datos Oracle y productos afines Descripción de los conceptos y la

Más detalles

Optimización de consultas Resumen del capítulo 14

Optimización de consultas Resumen del capítulo 14 Optimización de consultas Resumen del capítulo 14 Libro: Fundamentos de Bases de Datos Silberschatz et al. 5ed. Dr. Víctor J. Sosa Agenda 1. Visión general 2. Estimación de las estadísticas de los resultados

Más detalles

FUNDAMENTOS DE LAS BASES DE DATOS ( ) Datos Generales

FUNDAMENTOS DE LAS BASES DE DATOS ( ) Datos Generales FUNDAMENTOS DE LAS BASES DE DATOS ( 2010-11 ) Datos Generales Código 21008 Crdts. ECTS. Departamentos y Áreas Departamentos Área Dpto. Respon. Respon. Acta LENGUAJES Y SISTEMAS INFORMÁTICOS LENGUAJES Y

Más detalles

Álgebra Relacional. Carlos A. Olarte BDI

Álgebra Relacional. Carlos A. Olarte BDI Carlos A. Olarte (carlosolarte@puj.edu.co) BDI Contenido 1 Operaciones Fundamentales 2 Operaciones Adicionales Operaciones Fundamentales Conjunto de operaciones que toman como argumentos relaciones y retornan

Más detalles

Colección de Tesis Digitales Universidad de las Américas Puebla. Romero Martínez, Modesto

Colección de Tesis Digitales Universidad de las Américas Puebla. Romero Martínez, Modesto 1 Colección de Tesis Digitales Universidad de las Américas Puebla Romero Martínez, Modesto El procesamiento de consultas en un sistema multibase de datos es la pieza mas importante para la operación del

Más detalles

DISEÑO FÍSICO DE UNA BASE DE DATOS EDWIN FERNANDO PACHECO FIGUEROA LICENCIATURA EN INFORMÁTICA UNIVERSIDAD DE NARIÑO

DISEÑO FÍSICO DE UNA BASE DE DATOS EDWIN FERNANDO PACHECO FIGUEROA LICENCIATURA EN INFORMÁTICA UNIVERSIDAD DE NARIÑO DISEÑO FÍSICO DE UNA BASE DE DATOS QUÉ ES UN DISEÑO FISICO DE BASE DE DATOS. "Diseño físico de la base de datos" es el proceso de selección de una estructura física para una estructura lógica dada. El

Más detalles

Bases de Datos 1. Teórico: Structured Query Language

Bases de Datos 1. Teórico: Structured Query Language Bases de Datos 1 Teórico: Structured Query Language Historia Los orígenes del SQL están ligados a los orígenes de las bases de datos relacionales Estandarizado por ANSI en 1986 (SQL-86) Hubieron varias

Más detalles

Almacenamiento y Recuperación de la Información

Almacenamiento y Recuperación de la Información Almacenamiento y Recuperación de la Información Técnicas de Indexación Indices Dinámicos do Semestre 5 Wenceslao Palma M. www.inf.utfsm.cl/~wpalma/ari Indices Dinámicos Indices tipo

Más detalles

SQL, Consultas. Son Importantes las Consultas? Cuál es el Resultado de SELECT? Andrés Moreno S.

SQL, Consultas. Son Importantes las Consultas? Cuál es el Resultado de SELECT? Andrés Moreno S. SQL, Consultas Andrés Moreno S. 1 Son Importantes las Consultas? Una cosa es guardar la información en forma estructurada y ordenada. Pero el utilizar la información y entender su relevancia son la clave

Más detalles

Análisis y Recuperación de Información

Análisis y Recuperación de Información Análisis y Recuperación de Información 1 er Cuatrimestre 2017 Página Web http://www.exa.unicen.edu.ar/catedras/ayrdatos/ Prof. Dra. Daniela Godoy ISISTAN Research Institute UNICEN University Tandil, Bs.

Más detalles

Definición. Tema 1: Introducción

Definición. Tema 1: Introducción Tema 1: Introducción Definición Objetivos de los sistemas de bases de datos Vistas de datos Modelos de datos Lenguajes de definición de datos (DDL) Lenguajes de manipulación de datos (DML) Gestión de transacciones

Más detalles

Tema 5 Algebra Relacional

Tema 5 Algebra Relacional Asignatura de Bases de Datos Tema 5 Algebra Relacional Pedro Pablo Alarcón Cavero Departamento de O.E.I. Escuela Universitaria de Informática Universidad Politécnica de Madrid 1 Introducción Álgebra Relacional

Más detalles

BASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Algebra Relacional y SQL

BASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Algebra Relacional y SQL BASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Algebra Relacional y SQL Lledó Museros / Ismael Sanz museros@icc.uji.es / isanz@icc.uji.es 1de 60 Índice 1. Introducción 2. Operadores del Álgebra

Más detalles

Archivos Indice. Indexación y. Asociación. Conceptos Básicos Indices Ordenados Arboles. Asociación. Docente: Albert A.

Archivos Indice. Indexación y. Asociación. Conceptos Básicos Indices Ordenados Arboles. Asociación. Docente: Albert A. Docente: Albert A. Osiris Sofía 1º Cuatrimestre 2002 Conceptos Básicos Indices Ordenados Arboles Asociación Indexación y Asociación Archivos Indice 1 2 3 1 Archivos Indice Ordenados Asociativos Primario

Más detalles

El Modelo Relacional - Dinámica-

El Modelo Relacional - Dinámica- El Modelo Relacional - Dinámica- Diseño de Bases de Datos y Seguridad de la Información www.kybele.es Índice 1. Introducción 2. Álgebra Relacional 2.1. Operación de Asignación y Renombrado de Atributos

Más detalles

Guía del Curso Curso de Bases de Datos Relacionales

Guía del Curso Curso de Bases de Datos Relacionales Guía del Curso Curso de Bases de Datos Relacionales Modalidad de realización del curso: Titulación: Online Diploma acreditativo con las horas del curso OBJETIVOS Este Curso de Bases de Datos Relacionales

Más detalles

Bases de Datos Multimedia

Bases de Datos Multimedia Bases de Datos Multimedia Capítulo 3 Algoritmos de búsqueda por similitud Este material se basa en el curso de Base de Datos Multimedia del DCC de la Universidad de Chile (Prof. Benjamín Bustos). 3.1 Conceptos

Más detalles

ÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1

ÍNDICE. Introducción... Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1 ÍNDICE Introducción... XI Capítulo 1. Características, instalación, inicio y entorno de trabajo... 1 Características y novedades de Access 2010... 1 Comienzo rápido del trabajo y seguimiento de la información...

Más detalles

El Modelo Relacional: Dinámica y Álgebra Relacional. El Modelo Relacional Tema 8

El Modelo Relacional: Dinámica y Álgebra Relacional. El Modelo Relacional Tema 8 El Modelo Relacional: Dinámica y Álgebra Relacional El Modelo Relacional Tema 8 Índice 1. Introducción 2. Álgebra Relacional 1. Operadores de Asignación y Renombrado de Atributos 2. Operadores Primitivos

Más detalles

álgebra relacional 2

álgebra relacional 2 16/04/2012 1 La división es un operador "extraño" dentro del álgebra relacional por su especificidad. Suponemos que su inclusión en AR tiene que ver con el "para todos" ( x F) del cálculo relacional puesto

Más detalles

Consultas SQL II. Diego Egüez. Universidad San Francisco de Quito (USFQ)

Consultas SQL II. Diego Egüez. Universidad San Francisco de Quito (USFQ) Consultas SQL II Diego Egüez Universidad San Francisco de Quito (USFQ) Abstract En este trabajo se exploran las consultas o queries en SQL. Se hace enfoque en consultas complejas y subconsultas. Los comandos

Más detalles

Bases de Datos Distribuidas -Antecedentes

Bases de Datos Distribuidas -Antecedentes Bases de Datos Distribuidas -Antecedentes M.C. Fernando Pech May Instituto Tecnológico Superior de los Ríos auxtecomp@gmail.com Materia: Distributed Database Systems Enero, 2012 Fernando Pech May Bases

Más detalles

A.1. Definiciones de datos en SQL

A.1. Definiciones de datos en SQL A.1. Definiciones de datos en SQL Las Sentencias del lenguaje de definición de datos (DDL) que posee SQL operan en base a tablas. Las Principales sentencias DDL son las siguientes: CREATE TABLE DROP TABLE

Más detalles

Sub consultas Objetivos Utilizando una sub consulta para resolver un problema

Sub consultas Objetivos Utilizando una sub consulta para resolver un problema Juanjo Dai Sub consultas Objetivos En este texto se aprenderá más acerca de las características avanzadas de las sentencias SELECT Describirán los tipos de problemas que una sub consulta puede resolver

Más detalles

Álgebra Relacional (1 de 2)

Álgebra Relacional (1 de 2) Álgebra Relacional (1 de 2) T4.2006-07 Dpto. Lenguajes y Sistemas Informáticos Universidad de Alicante Qué es el AR? Para qué sirve? Los que utiliza AR. Cómo se adaptan otros ya conocidos Cómo se usan

Más detalles

Diseño Físico. No existen metodologías para realizar el diseño físico. Es muy dependiente del SGBD concreto.

Diseño Físico. No existen metodologías para realizar el diseño físico. Es muy dependiente del SGBD concreto. Diseño Físico Diseño Físico El diseño físico de BD forma parte importante del ciclo de vida de un sistema de BDs. Consiste en escoger las estructuras de almacenamiento y caminos de acceso que 1) cumplan

Más detalles

SQL DML Select. Ges$ón y Modelación de Datos. María Constanza Pabón

SQL DML Select. Ges$ón y Modelación de Datos. María Constanza Pabón SQL DML Select Ges$ón y Modelación de Datos María Constanza Pabón mcpabon@javerianacali.edu.co SQL - DML Sentencias: INSERT UPDATE DELETE SELECT SQL - DML Query (consulta): proceso de recuperar datos de

Más detalles

Usuarios de la base de datos

Usuarios de la base de datos Usuarios de la base de datos Un objetivo principal de un sistema de bases de datos es recuperar información y almacenar nueva información en la base de datos. Las personas que trabajan con una base de

Más detalles

Vistas en InformiX Sistemas de Bases de Datos II EMT CETP A/S Leonardo Carámbula

Vistas en InformiX Sistemas de Bases de Datos II EMT CETP A/S Leonardo Carámbula Vistas en InformiX Características Una vista es una tabla virtual cuyo contenido está definido por una consulta SELECT. Al igual que una tabla real, una vista tiene: un nombre un conjunto de columnas con

Más detalles

Bases de Datos Relacionales III

Bases de Datos Relacionales III Introducción a la Computación Bases de Datos Relacionales III Esteban E. Mocskos (emocskos@dc.uba.ar) Facultad de Ciencias Exactas y Naturales, UBA CONICET 11/06/2013 E. Mocskos (UBA CONICET) Clase 15:

Más detalles

BASES DE DATOS curso 2012/2013

BASES DE DATOS curso 2012/2013 Solución Actividad 5: Estimación de estadísticas 1 Considérense las relaciones r1(a, B, C), r2(c, D, E) y r3(e, F) del ejercicio anterior. Supóngase que no hay claves primarias, excepto el esquema completo.

Más detalles

Bases de Datos I. Vistas

Bases de Datos I. Vistas Bases de Datos I Vistas INGENIERÍA DE SISTEMAS Cursada 2016 VISTAS ESQUEMA EXTERNO Las VISTAS forman parte del esquema externo de la BD Son elementos del catálogo de la BD Cada esquema externo presenta

Más detalles

Catedra de Base de Datos

Catedra de Base de Datos Catedra de Base de Datos Facultad de Ciencias Exactas y Tecnología Universidad Nacional de Tucumán Ciclo Lec)vo 2017 Programa Analítico de la Materia Unidad 4: Álgebra relacional Álgebra relacional. Sintaxis

Más detalles

Sistemas de Datos. Rendimiento de la Base de datos. Procesamiento de consultas y administración del rendimiento

Sistemas de Datos. Rendimiento de la Base de datos. Procesamiento de consultas y administración del rendimiento Rendimiento de la Base de datos. Procesamiento de consultas y administración del rendimiento Esquema de la clase 1. Procesamiento de consultas 2. El optimizador del DBMS 3. Los Ajustes del Rendimiento

Más detalles

TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS

TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS 1 1 BASES DE DATOS DISTRIBUIDAS TEMA 3 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 3. PROCESAMIENTO DE CONSULTAS DISTRIBUIDAS 3.1 Metodología del procesamiento de consultas distribuidas 3.2 Estrategias de

Más detalles

Un proyecto de IBM llamado Sistem/R construye un prototipo simple llamado SQUARE que después se transformó en SQL.

Un proyecto de IBM llamado Sistem/R construye un prototipo simple llamado SQUARE que después se transformó en SQL. CONTENIDO: 1. Lenguaje SQL 1. Componentes 2. Comandos 3. Clausulas 4. Operadores lógicos 5. Operadores de comparación 6. Funciones de agregado 2. MYSQL 1. Como entrar a MySQL 2. Comandos generales 3. Sintaxis

Más detalles

4. Algebra relacional

4. Algebra relacional Tema 7: Modelo Relacional. Dinámica 4. Algebra relacional Operaciones unarias Operaciones de conjuntos Operaciones de combinación Operación de división Operación de agregación y agrupamiento Tema 7: Dinámica

Más detalles

INDICE Prefacio Capitulo 1: Introducción Parte Primeras: modelos de datos Capitulo 2: Modelos entidad-relación Capitulo 3: El modelo relacional

INDICE Prefacio Capitulo 1: Introducción Parte Primeras: modelos de datos Capitulo 2: Modelos entidad-relación Capitulo 3: El modelo relacional INDICE Prefacio XVII Capitulo 1: Introducción 1.1 Aplicaciones de los sistemas de bases de datos 1 1.2. Sistemas de bases de datos frente a sistemas de archivos 2 1.3 Visión de los datos 3 1.4 modelos

Más detalles

Anexo 3 COMPONENTES DE SQL SERVER. Los DDL (Data Definition Languaje) que permiten crear y definir nuevas

Anexo 3 COMPONENTES DE SQL SERVER. Los DDL (Data Definition Languaje) que permiten crear y definir nuevas Anexo 3 COMPONENTES DE SQL SERVER COMANDOS Existen tres tipos de comandos SQL [5]: Los DDL (Data Definition Languaje) que permiten crear y definir nuevas bases de datos, campos e índices. En la tabla se

Más detalles

SQL: Consultas Avanzadas. Bases de Datos

SQL: Consultas Avanzadas. Bases de Datos SQL: Consultas Avanzadas Bases de Datos Resumen: Consultas Básicas SELECT [DISTINCT] FROM [WHERE ] [GROUP BY ] [HAVING

Más detalles

Cátedra de Base de Datos

Cátedra de Base de Datos Cátedra de Base de Datos Facultad de Ciencias Exactas y Tecnología Universidad Nacional de Tucumán Ciclo Lectivo 2018 Programa Analítico de la Materia Unidad 4: Álgebra relacional Álgebra relacional. Sintaxis

Más detalles

Apuntes de Teórico de Programación 3. Apuntes de Teórico PROGRAMACIÓN 3. Greedy. Versión 1.1

Apuntes de Teórico de Programación 3. Apuntes de Teórico PROGRAMACIÓN 3. Greedy. Versión 1.1 Apuntes de Teórico PROGRAMACIÓN 3 Greedy Versión 1.1 1 Índice Índice... Introducción... 3 Ejemplo 1 (problema de las monedas)... 3 Ejemplo (problema de la mochila)... 4 Aplicaciones del método Greedy a

Más detalles

DISEÑO FÍSICO. Tema 14. Diseño Físico

DISEÑO FÍSICO. Tema 14. Diseño Físico DISEÑO FÍSICO Tema 14. Diseño Físico Introducción Las bases de datos se organizan en dos secciones: El esquema Los datos o instancias El esquema es la definición de la BD: El nombre de cada tabla El nombre

Más detalles

Técnico en Sistemas de Almacenamiento

Técnico en Sistemas de Almacenamiento Técnico en Sistemas de Almacenamiento Duración: 80 horas Modalidad: Online Coste Bonificable: 600 Objetivos del curso Este Curso de Técnico en Sistemas de Almacenamiento le ofrece una formación especializada

Más detalles

Diseño de Bases de Datos Álgebra Relacional

Diseño de Bases de Datos Álgebra Relacional Diseño de Bases de Datos Álgebra Relacional Alonso Inostrosa Psijas USACH Alonso Inostrosa Psijas 1 / 46 Contenidos 1 Operaciones Básicas de Álgebra Relacional La Operación Select La Operación Proyección

Más detalles

Álgebra relacional. Álgebra Relacional. Franco Guidi Polanco. Semántica de los Operadores del Álgebra Relacional: Unión. Propiedad de cierre

Álgebra relacional. Álgebra Relacional. Franco Guidi Polanco. Semántica de los Operadores del Álgebra Relacional: Unión. Propiedad de cierre Álgebra Relacional Álgebra relacional Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, fguidi@ucv.cl Revisión: 8 de Mayo de 26 Modelo desarrollado por

Más detalles

INSTITUTO NACIONAL SUPERIOR DEL PROFESORADO TÉCNICO - TÉCNICO SUPERIOR EN INFORMÁTICA APLICADA - PROGRAMACIÓN I

INSTITUTO NACIONAL SUPERIOR DEL PROFESORADO TÉCNICO - TÉCNICO SUPERIOR EN INFORMÁTICA APLICADA - PROGRAMACIÓN I RESOLUCIÓN DE PROBLEMAS Y ALGORITMOS La principal razón para que las personas aprendan lenguajes de programación es utilizar una computadora como una herramienta para la resolución de problemas. Cinco

Más detalles

UNIDAD4. 1. Procedimentales 2. No Procedimentales

UNIDAD4. 1. Procedimentales 2. No Procedimentales UNIDAD4 Concepto de Clasificación de Lenguajes Concepto: Un lenguaje de consulta es un lenguaje en el que un usuario solicita información de la base de datos. Estos lenguajes son normalmente de más alto

Más detalles

Minería de Datos Web. Cursada 2018

Minería de Datos Web. Cursada 2018 Minería de Datos Web Cursada 2018 Proceso de Minería de Texto Clustering de Documentos Clasificación de Documentos Es un método supervisado para dividir documentos en base a categorías predefinidas Los

Más detalles

PROGRAMA. Los objetivos de la materia son que el alumno al finalizar el cursado haya aprendido a:

PROGRAMA. Los objetivos de la materia son que el alumno al finalizar el cursado haya aprendido a: PROGRAMA 1) OBJETIVOS DE LA ASIGNATURA Los objetivos de la materia son que el alumno al finalizar el cursado haya aprendido a: 1) Desarrollar los conceptos de cómo se estructuran los datos en los dispositivos

Más detalles

CAPÍTULO 6 PROGRAMACIÓN DINÁMICA. Programación Dinámica

CAPÍTULO 6 PROGRAMACIÓN DINÁMICA. Programación Dinámica CAPÍTULO 6 PROGRAMACIÓN DINÁMICA Programación Dinámica Programación Dinámica En muchos casos las decisiones del pasado afectan los escenarios del futuro. En estos casos se pueden tomar 2 opciones: asumir

Más detalles

Técnico en Tratamiento y Manipulación de Datos. Informática y Programación

Técnico en Tratamiento y Manipulación de Datos. Informática y Programación Técnico en Tratamiento y Manipulación de Datos Informática y Programación Ficha Técnica Categoría Informática y Programación Referencia 151723-1501 Precio 62.00 Euros Sinopsis Este curso de Técnico en

Más detalles

UNIVERSIDAD NACIONAL DE RÍO CUARTO FACULTAD DE CIENCIAS EXACTAS, FÍSICO-QUÍMICAS Y NATURALES DEPARTAMENTO DE COMPUTACIÓN

UNIVERSIDAD NACIONAL DE RÍO CUARTO FACULTAD DE CIENCIAS EXACTAS, FÍSICO-QUÍMICAS Y NATURALES DEPARTAMENTO DE COMPUTACIÓN UNIVERSIDAD NACIONAL DE RÍO CUARTO FACULTAD DE CIENCIAS EXACTAS, FÍSICO-QUÍMICAS Y NATURALES DEPARTAMENTO DE COMPUTACIÓN CARRERA/S: LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN. PLAN DE ESTUDIOS: 1999 ASIGNATURA:

Más detalles

UNIVERSIDAD RICARDO PALMA FACULTAD DE INGENIERÍA

UNIVERSIDAD RICARDO PALMA FACULTAD DE INGENIERÍA UNIVERSIDAD RICARDO PALMA FACULTAD DE INGENIERÍA ESCUELA ACADÉMICO PROFESIONAL DE INGENIERÍA DE INFORMÁTICA 1. DATOS GENERALES PLAN DE ESTUDIOS 2006-2 SEMESTRE ACADEMICO 2008-I Nombre del curso: INTRODUCCION

Más detalles

Algebra Relacional. Gestión y Modelación de Datos

Algebra Relacional. Gestión y Modelación de Datos Algebra Relacional Gestión y Modelación de Datos Algebra Relacional Lenguaje de consulta Procedimental (énfasis en el como ) Consta de: Operandos: relaciones Operadores: aplicados sobre relaciones Cerrada:

Más detalles

Búsqueda en espacio de estados

Búsqueda en espacio de estados Búsqueda en espacio de estados Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Inteligencia Artificial CCIA, US Búsqueda en espacio de estados IA 1 / 35 Metodología

Más detalles

OPTIMIZACION DE CONSULTAS A BASES DE DATOS RELACIONALES

OPTIMIZACION DE CONSULTAS A BASES DE DATOS RELACIONALES OPTIMIZACION DE CONSULTAS A BASES DE DATOS RELACIONALES 1. CONTENIDO DEL MARCO TEORICO 2. OPTIMIZACION ALGEBRAICA DE CONSULTAS 3. COSTO DEL INPUT / OUTPUT DEL PRODUCTO CARTESIANO Y JUNTA NATURAL 4. TUNING

Más detalles

Programación de la asignatura BDA ( )

Programación de la asignatura BDA ( ) Objetivos. Programación de la asignatura BDA (2002-03) Los objetivos generales de la asignatura son: estudio de los fundamentos de la tecnología de bases de datos estudio del modelo relacional de datos,

Más detalles

Introducción 1 Recuperación de Datos mediante la Sentencia SQL SELECT

Introducción 1 Recuperación de Datos mediante la Sentencia SQL SELECT Introducción Objetivos I-2 Objetivos del Curso I-3 Oracle11g - 12cI-5 Oracle Database 11g - 12cI-6 Oracle Application Server 11g - 12cI-7 Oracle Enterprise Manager 11g - 12cGrid Control I-8 Sistema de

Más detalles

Universidad Ricardo Palma

Universidad Ricardo Palma Universidad Ricardo Palma FACULTAD DE INGENIERÍA ESCUELA ACADÉMICO PROFESIONAL DE INGENIERÍA INFORMATICA DEPARTAMENTO ACADÉMICO DE INGENIERÍA PLAN DE ESTUDIOS 2006-II SÍLABO 1. DATOS ADMINISTRATIVOS 1.1.

Más detalles

1. Lenguaje de Definición de Datos. 2. Lenguaje de Manipulación de. Datos. M. C. Gustavo Alfonso Gutiérrez Carreón

1. Lenguaje de Definición de Datos. 2. Lenguaje de Manipulación de. Datos. M. C. Gustavo Alfonso Gutiérrez Carreón 1. Lenguaje de Definición de Datos 2. Lenguaje de Manipulación de Datos M. C. Gustavo Alfonso Gutiérrez Carreón Los 'sistemas de gestión de bases de datos (en inglés database management system, abreviado

Más detalles

Bases de Datos Distribuidas

Bases de Datos Distribuidas Bases de Datos Distribuidas Lic. Hugo Ramón Descomposición de Queries y Localización de Datos Agenda Esquema de Capas Descomposición de Queries Localización de Datos Esquemas de Capas Query Descomposición

Más detalles

CEP GUÍA DE REFERENCIA

CEP GUÍA DE REFERENCIA CEP GUÍA DE REFERENCIA NOVIEMBRE 2014 1 INDICE 1 INDICE... 2 2 INTRODUCCIÓN... 3 2.1 OBJETIVOS Y ALCANCE DEL PRESENTE DOCUMENTO... 3 3 SINTAXIS DEL CEP DE SOFIA2... 4 3.1 CONCEPTOS PREVIOS... 4 3.2 DEFINICIÓN

Más detalles

UNIVERSIDAD DE GUADALAJARA

UNIVERSIDAD DE GUADALAJARA UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE LOS ALTOS DIVISIÓN DE ESTUDIOS EN FORMACIONES SOCIALES LICENCIATURA: INGENIERÍA EN COMPUTACIÓN UNIDAD DE APRENDIZAJE POR OBJETIVOS BASES DE DATOS LIC.

Más detalles

Bases de datos Unidad 1 Introducción a las BD. Mónica María Rojas Rincón Oficina: P19-103

Bases de datos Unidad 1 Introducción a las BD. Mónica María Rojas Rincón Oficina: P19-103 Bases de datos Unidad 1 Introducción a las BD Mónica María Rojas Rincón mmrojas@elpoli.edu.co Oficina: P19-103 Competencias a desarrollar Identificar los conceptos propios de la asignatura. Diferenciar

Más detalles

BASES DE DATOS Lenguajes de Consulta

BASES DE DATOS Lenguajes de Consulta UNIVERSIDAD DE BUENOS AIRES FACULTAD DE CIENCIAS EXACTAS Y NATURALES DEPARTAMENTO DE COMPUTACIÓN BASES DE DATOS Lenguajes de Consulta GUÍA DE EJERCICIOS 1 AR y CRT 1.1. Dadas las relaciones R, S y T calcular:

Más detalles

Consultas con combinaciones

Consultas con combinaciones UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden

Más detalles

6.1 Introducción. Fund. Bases de Datos Ing. Felipe Alanís González -ITD- 1

6.1 Introducción. Fund. Bases de Datos Ing. Felipe Alanís González -ITD- 1 6.1 Introducción SQL es más amigable para el usuario, a diferencia de Algebra Relacional, Aunque está basado principalmente en él. Es el lenguaje comercial más popular. Es el lenguaje estándar de las Bases

Más detalles

BASES DE DATOS I CONSULTA DE DATOS

BASES DE DATOS I CONSULTA DE DATOS BASES DE DATOS I CONSULTA DE DATOS curso 2008 Agenda Repaso. Consultas Anidadas. Operadores : IN NOT IN EXIST NOT EXIST Agrupamiento. JOIN División. 1 Sentencia SELECT SELECT [ DISTINCT ]

Más detalles

TEMA 4.6: Procesamiento y optimización de consultas

TEMA 4.6: Procesamiento y optimización de consultas TEMA 4.6: Procesamiento y optimización de consultas 1. Introducción 2. Procesamiento de una consulta 2.1.- Análisis de la consulta 2.2.- Reescritura de la consulta 2.3.- Generación de un plan físico de

Más detalles