Anda di halaman 1dari 19

OBJETIVO DEL PROCESAMIENTO DE CONSULTAS

El objetivo es transformar consultas escritas en lenguaje de alto nivel,


como por ejemplo SQL, en estrategias de ejecucin optimizadas para
aprovechar los recursos al mximo y que los tiempos de respuesta de nuestra
BD sea lo suficientemente rpido como para atender varios usuarios al mismo
tiempo.
Normalmente una estrategia de ejecucin se expresa en lenguaje de
bajo nivel, como lgebra relacional, a travs de la utilizacin y combinacin de
varias operaciones del lgebra relacional como lo son la seleccin, proyeccin,
etc.

Herramientas de Consulta y Anlisis (http://www.dataprix.com/36herramientas-consulta-y-analisis)

Figura 3.59: Herramientas de Consulta y Anlisis.

Las herramientas de consulta y anlisis son sistemas que permiten a l@s


usuari@s realizar la exploracin de datos del DW. Bsicamente constituyen el
nexo entre el depsito de datos y l@s usuari@s.
Utilizan la metadata de las estructuras de datos que han sido creadas
previamente (cubos multidimensionales, Business Models, etc.) para trasladar
a travs de consultas SQL los requerimientos de l@s usuari@s, para luego,
devolver el resultado obtenido.
Estas herramientas tambin pueden emplear simples conexiones a
bases de datos (JNDI, JDBC, ODBC), para obtener la informacin deseada.
A travs de una interfaz grfica y una serie de pasos, l@s usuari@s
generan consultas que son enviadas desde la herramienta de consulta y

anlisis al Query Manager, este a su vez realiza la extraccin de informacin al


DW Manager y devuelve los resultados obtenidos a la herramienta que se los
solicit. Luego, estos resultados son expuestos ante l@s usuari@s en formatos
que le son familiares.
PROCESO
Este proceso se puede comprender mejor al observar la siguiente figura:

Figura 3.60:

Proceso de Consulta y Anlisis.

El mismo, se lleva a cabo a travs de seis pasos sucesivos:


1. L@s usuari@s seleccionan o establecen que datos desean obtener del
DW, mediante las interfaces de la herramienta que utilice.
2. La herramienta recibe el pedido de l@s usuari@s, construye la consulta
(utilizando la metadata) y la enva al Query Manager.
3. El Query Manager ejecuta la consulta sobre la estructura de datos con la
que se est trabajando (cubo multidimensional, Business Model, etc.).
4. El Query Manager obtiene los resultados de la consulta.
5. El Query Manager enva los datos a la herramienta de consulta y anlisis.
6. La herramienta presentan a l@s usuari@s la informacin requerida.
Una de las principales ventajas de utilizar estas herramientas, es que l@s
usuari@s no se tienen que preocupar por conocer cules son las caractersticas

y funcionalidades de las estructuras de datos utilizadas, ni por saber emplear el


lenguaje SQL, solo se deben enfocar en el anlisis.
CARACTERISTICAS
Las herramientas de consulta y anlisis, en general, comparten las
siguientes caractersticas:

Accesibilidad a la informacin: permiten el acceso a la informacin a


travs de las diferentes estructuras de datos de forma transparente a
l@s usuari@s finales, para que est@s solo se enfoquen en el anlisis y
no en el origen y procedencia de los datos.

Apoyo en la toma de decisiones: permiten la exploracin de los datos, a


fin de seleccionar, filtrar y personalizar los mismos, para la obtencin de
informacin oportuna, relevante y til, para apoyar el proceso de toma
de decisiones.

Orientacin l@s usuari@s finales: permiten a travs de entornos


amigables e intuitivos, que l@s usuari@s puedan realizar anlisis y
consultas, sin poseer conocimientos tcnicos. Si bien lo realmente
importante son los datos mismos, que estos puedan ser interpretados y
analizados por l@s usuari@s depender en gran medida de cmo se
presenten y dispongan.

TIPOS DE HERRAMIENTAS
Existen diferentes tipos de herramientas de consulta y anlisis, y de
acuerdo a la necesidad, tipos de usuari@s y requerimientos de informacin, se
debern seleccionar las ms propicias al caso. Entre ellas se destacan las
siguientes:

Reportes y Consultas.
OLAP.
Dashboards.
Data Mining.
EIS.

Reportes y Consultas
Se han desarrollado muchas herramientas para la produccin de consultas y
reportes, que ofrecen a l@s usuari@s, a travs de pantallas grficas intuitivas,
la posibilidad de generar informes avanzados y detallados del tema de inters
de inters que se este analizando. L@s usuari@s solo deben seguir una serie
de simples pasos, como por ejemplo seleccionar opciones de un men,
presionar tal o cual botn para especificar los elementos de datos, sus
condiciones, criterios de agrupacin y dems atributos que se consideren
significativos.

Actualmente las herramientas de generacin de reportes y consultas


cuentan con muchas prestaciones, las cuales permiten dar variadas formas y
formatos a la presentacin de la informacin. Entre las opciones ms comunes
se encuentran las siguientes:

Parametrizacin de los datos devueltos.

Seleccin de formatos de salida (planilla de clculo, HTML, PDF, etc.).

Inclusin de grficos de tortas, barras, etc.

Utilizacin de plantillas de formatos de fondos.

Inclusin de imgenes.

Formatos tipogrficos.

Links a otros reportes.

OLAP
El procesamiento analtico en lnea OLAP (On Line Analytic Processing), es la
componente ms poderosa del Data Warehousing, ya que es el motor de
consultas especializado del depsito de datos.
Las herramientas OLAP, son una tecnologa de software para anlisis en
lnea, administracin y ejecucin de consultas, que permiten inferir informacin
del comportamiento del negocio.
Su principal objetivo es el de brindar rpidas respuestas a complejas
preguntas, para interpretar la situacin del negocio y tomar decisiones. Cabe
destacar que lo que es realmente interesante en OLAP, no es la ejecucin de
simples consultas tradicionales, sino la posibilidad de utilizar operadores tales
como drill-up, drill-down, etc, para explotar profundamente la informacin.
Adems, a travs de este tipo de herramientas, se puede analizar el
negocio desde diferentes escenarios histricos, y proyectar como se ha venido
comportando y evolucionando en un ambiente multidimensional, o sea,
mediante la combinacin de diferentes perspectivas, temas de inters o
dimensiones. Esto permite deducir tendencias, por medio del descubrimiento
de relaciones entre las perspectivas que a simple vista no se podran encontrar
sencillamente.
Las herramientas OLAP requieren que los datos estn organizados dentro
del depsito en forma multidimensional, por lo cual se utilizan cubos
multidimensionales.
Adems de las caractersticas ya descritas, se pueden enumerar las
siguientes:

Permite recolectar y organizar la informacin analtica necesaria para


l@s usuari@s y disponer de ella en diversos formatos, tales como tablas,
grficos, reportes, tableros de control, etc.

Soporta anlisis complejos de grandes volmenes de datos.

Complementa las actividades de otras herramientas que requieran


procesamiento analtico en lnea.

Presenta a l@s usuari@s una visin multidimensional de los datos


(matricial) para cada tema de inters del negocio.

Es transparente al tipo de tecnologa que soporta el DW, ya sea ROLAP,


MOLAP u HOLAP.

No tiene limitaciones con respecto al nmero mximo de dimensiones


permitidas.

Permite a l@s usuari@s, analizar la informacin basndose en ms


criterios que un anlisis de forma tradicional.

Al contar con muestras grandes, se pueden explorar mejor los datos en


busca de respuestas.

Permiten realizar agregaciones y combinaciones de los datos de


maneras complejas y especficas, con el fin de realizar anlisis ms
estratgicos.

Dashboards
Los Dashboards se pueden entender como una coleccin de reportes,
consultas y anlisis interactivos que hacen referencia a un tema en particular y
que estn relacionados entre s.
Existen diversas maneras de disear un Dashboard, cada una de las cuales
tiene sus objetivos particulares, pero a modo de sntesis se expondrn algunas
caractersticas generales que suelen poseer:

Presentan la informacin altamente resumida.

Se componen de consultas, reportes, anlisis interactivos, grficos (de


torta, barras, etc), semforos, indicadores causa-efecto, etc.

Permiten evaluar la situacin de la empresa con un solo golpe de vista.

Poseen un formato de diseo visual muy llamativo.

Data Mining
Esta herramienta constituye una poderosa tecnologa con un gran potencial
que ayuda y brinda soporte a l@s usuari@s, con el fin de permitirles analizar y
extraer conocimientos ocultos y predecibles a partir de los datos almacenados
en un DW o en un OLTP. Claro que es deseable que la fuente de informacin sea
un DW, por todas las ventajas que aporta.
La integracin con el depsito de datos facilita que las decisiones
operacionales sean implementadas directamente y monitorizadas.
Implementar Data Mining permitir analizar factores de influencia en
determinados procesos, predecir o estimar variables o comportamientos
futuros, segmentar o agrupar tems similares, adems de obtener secuencias
de eventos que provocan comportamientos especficos.
Una de las principales ventajas del Data Mining es que, como recin se ha
hecho mencin, permite inferir comportamientos, modelos, relaciones y
estimaciones de los datos, para poder desarrollar predicciones sobre los
mismos, sin la necesidad de contar con patrones o reglas preestablecidas,
permitiendo tomar decisiones proactivas y basadas en un conocimiento
acabado de la informacin.
Adems brinda la posibilidad de dar respuesta a preguntas complicadas
sobre los temas de inters, como por ejemplo Qu est pasando?, Por qu? y
Qu pasara s?, estos cuestionamientos aplicados a una empresa podran ser:
Cul de los productos de tal marca y clase sern ms vendidos en la zona norte
en el prximo semestre? y por qu? Adems se podrn ver los resultados en
forma de reportes tabulares, matriciales, grficos, tableros, etc.
Entonces, se puede definir Data Mining como una tcnica para descubrir
patrones y relaciones entre abundantes cantidades de datos, que a simple
vista o que mediante otros tipos de anlisis no se pueden deducir, ya que
tradicionalmente consumira demasiado tiempo o estara fuera de las
expectativas.
Los sistemas Data Mining se desarrollan bajo lenguajes de ltima
generacin basados en Inteligencia Artificial y utilizan mtodos matemticos
tales como:

Redes Neuronales.

Sistemas Expertos.

Programacin Gentica.

rboles de Decisin.

Soporta adems, sofisticadas operaciones de anlisis como los sistemas


Scoring, aplicaciones de Deteccin de Desviacin y Deteccin de Fraude.
Es muy importante tener en cuenta que en las herramientas OLAP y en los
reportes y consultas, el anlisis parte de una pregunta o hiptesis generada
por l@s usuari@s, en cambio Data Mining permite generar estas hiptesis.

Generalmente las herramientas de Data Mining se integran con plataformas


de hardware y software existentes (como DW) para incrementar el valor de las
fuentes de datos establecidas y para que puedan ser integradas con nuevos
productos y sistemas en lnea (como OLAP). En adicin a esto, hacer minera de
datos sobre un depsito de datos permite entre otras ventajas contar con los
beneficios de los procesos ETL y de las tcnicas de limpieza de datos, tan
necesarios en este tipo de anlisis.

EIS
EIS (Executive Information System) proporciona medios sencillos para
consultar, analizar y acceder a la informacin de estado del negocio. Adems,
pone a disposicin facilidades para que l@s usuari@s puedan conseguir los
datos buscados rpidamente, empleando el menor tiempo posible para
comprender el uso de la herramienta.
Usualmente, EIS se utiliza para analizar los indicadores de performance y
desempeo del negocio o rea de inters, a travs de la presentacin de vistas
con datos simplificados, altamente consolidados, mayormente estticos y
preferentemente grficos.
El concepto principal de esta herramienta, se basa en el simple hecho de
que l@s ejecutiv@s no poseen tiempo, ni las habilidades necesarias para
analizar grandes cantidades de datos.
Al igual que OLAP y Data Mining, los EIS, se pueden aplicar
independientemente de la plataforma DW. Pero tener como base un depsito
de datos para implementar esta herramienta, conlleva todas las ventajas
implcitas del mismo.

La complejidad de las operaciones del lgebra relacional


La complejidad de las operaciones del lgebra relacional afectan
directamente su tiempo de ejecucin y establecen algunos principios tiles al
procesador de consultas.
Esos principios pueden ayudar en elegir la estrategia de ejecucin final.
La forma ms simple de definir la complejidad es en trminos de la
cardinalidad de las relaciones independientemente de los detalles de
implementacin tales como fragmentacin y estructuras de almacenamiento.

Lo anterior sugiere dos principios:


1. Dado que la complejidad es con base en las cardinalidades de las
relaciones, las operaciones ms selectivas que reducen las cardinalidades
deben ser ejecutadas primero.
2. Las operaciones deben ser ordenadas en el orden de complejidad
creciente de manera que el producto Cartesiano puede ser evitado o, al menos,
ejecutado al final de la estrategia.
Para obtener el nombre y el apellido de los empleados, tanto de
administracin como de produccin, es necesario hacer una unin de
EMPLEADOS_ADM yEMPLEADOS_PROD, y despus hacer una proyeccin
sobre los atributos nombre y apellido. La operacin se puede expresar de
las formas siguientes:
a) Se puede utilizar una sola expresin:
R := (EMPLEADOS_ADM EMPLEADOS_PROD) [nombre, apellido].
b) O bien podemos expresarlo en dos pasos:
EMPS := EMPLEADOS_ADMEMPLEADOS_PROD;
R := EMPS[nombre, apellido]
En los casos en que una consulta requiere efectuar muchas operaciones,
resulta ms sencilla la segunda alternativa, porque evita expresiones
complejas.

Caracterizacin de consultas
Es difcil evaluar y comparar procesadores de consultas para sistemas
centralizados y distribuidos dado que ellos difieren en muchos aspectos.
Caractersticas importantes de los procesadores de consultas que
pueden ser usados como base para su comparacin:
1.-Lenguaje
Gran parte del trabajo de procesamiento tiene que ver con el lenguaje,
pues los lenguajes relacionales proporcionan muchas oportunidades para la
optimizacin. En BBDD distribuidas se cuenta con un lenguaje relacional ms
primitivas de comunicacin.
2.- Tipo de optimizacin
El problema de optimizacin de consultas es altamente demandante en
tiempo de ejecucin y, en el caso general, es un problema de la clase NP.
As existen dos estrategias para su solucin: bsqueda exhaustiva o el
uso de heursticas.
Los algoritmos de bsqueda exhaustiva tienen
combinatorial en el nmero de relaciones de la consulta.

una

complejidad

Obtienen la transformacin ptima, pero slo se aplican a consultas


simples dado su tiempo de ejecucin.
Por otro lado, los algoritmos heursticos obtienen solo aproximaciones a
la transformacin ptima pero lo hacen en un tiempo de ejecucin razonable.
Las heursticas ms directas a aplicar son el agrupamiento de
expresiones comunes para evitar el clculo repetido de las mismas, aplicar
primero las operaciones de seleccin y proyeccin, reemplazar una junta por
una serie de semijuntas y reordenar operaciones para reducir el tamao de las
relaciones intermedias.
3.- Granularidad de la optimizacin
Existen dos alternativas: considerar slo una consulta a la vez o tratar de
optimizar mltiples consultas. La primera alternativa no considera el uso de
resultados comunes intermedios.
En el segundo caso puede obtener transformaciones eficientes si las
consultas son similares. Sin embargo, el espacio de decisin es mucho ms
amplio lo que afecta grandemente el tiempo de ejecucin de la optimizacin

4.- Tiempo de optimizacin


Durante la optimizacin de consultas dinmica la eleccin de la mejor
operacin siguiente se puede hacer basado en el conocimiento exacto de los
resultados de las operaciones anteriores. Por tanto, se requiere tener
estadsticas acerca del tamao de los resultados intermedios para aplicar esta
estrategia.
Un tercer enfoque, conocido como hbrido, utiliza bsicamente un
enfoque esttico, pero se puede aplicar un enfoque dinmico cuando los
tamaos de las relaciones estimados estn alejados de los tamaos actuales.
5.- Estadsticas
La efectividad de una optimizacin recae en las estadsticas de la base
de datos. La optimizacin dinmica de consultas requiere de estadsticas para
elegir las operaciones que deben realizarse primero.
La optimizacin esttica es an ms demandante ya que el tamao de
las relaciones intermedias tambin debe ser estimado basndose en
estadsticas. En bases de datos distribuidas las estadsticas para optimizacin
de consultas tpicamente se relacionan a los fragmentos; la cardinalidad y el
tamao de los fragmentos son importantes as como el nmero de valores
diferentes de los atributos.
Para minimizar la probabilidad de error, estadsticas ms detalladas tales
como histogramas de valores de atributos se usan pagando un costo mayor por
su manejo.
6.- Nodos de Decisin
Cuando se utiliza la optimizacin esttica, un solo nodo o varios de ellos
pueden participar en la seleccin de la estrategia a ser aplicada para ejecutar
la consulta.
La mayora de los sistemas utilizan un enfoque centralizado para la toma
de decisiones en el cual un solo lugar decide la estrategia a ejecutar.
Sin embargo, el proceso de decisin puede ser distribuido entre varios
nodos los cuales participan en la elaboracin de la mejor estrategia
El enfoque centralizado es simple, pero requiere tener conocimiento de
la base de datos distribuida completa.
El enfoque distribuido requiere solo de informacin local. Existen
enfoques hbridos en donde un nodo determina una calendarizacin global de
las operaciones de la estrategia y cada nodo optimiza las subconsultas locales

7.- Topologa de la Red


Como se mencion al principio, el tipo de red puede impactar
severamente la funcin objetivo a optimizar para elegir la estrategia de
ejecucin.
Por ejemplo, en redes de tipo WAN se sabe que en la funcin de costo el
factor debido a las comunicaciones es dominante. Por lo tanto, se trata de
crear una calendarizacin global basada en el costo de comunicacin.
A partir de ah, se generan calendarizaciones locales de acuerdo a una
optimizacin de consultas centralizada.
En redes de tipo LAN el costo de comunicacin no es tan dominante. Sin
embargo, se puede tomar ventaja de la comunicacin "broadcast" que existe
comnmente en este tipo de redes para optimizar el procesamiento de las
operaciones junta.
Por otra parte, se han desarrollado algoritmos especiales para topologas
especficas, como por ejemplo, la topologa de estrella.
8.-Fragmentos replicados
El procesador de consultas debe localizar los lugares donde se
encuentran los datos que busca. Para optimizacin, se suele jugar con el hecho
de que a veces hay datos que estn replicados, lo cual puede ser beneficioso
para aprovechar unos caminos u otros en la topologa de red.
9.-Uso de semijoins
El uso de semijoins reduce el tamao de los datos intercambiados entre
los sitios, por lo cual en redes lentas su uso est bastante extendido. No
obstante, esto implica aumento en el nmero de mensajes intercambiados y
aumento tambin del tiempo de proceso local.

Arquitectura del procesamiento de consultas

1. Descomposicin de consultas
La primera capa descompone una consulta en el clculo relacional en
una consulta en el lgebra relacional que opera sobre relaciones globales.
Consiste de cuatro partes:
1. Normalizacin. Involucra la manipulacin de los cuantificadores de la
consulta y de los calificadores de la misma mediante la aplicacin de la
prioridad de los operadores lgicos.
2. Anlisis. Se detecta y rechazan consultas semnticamente incorrectas.
3. Simplificacin. Elimina predicados redundantes.
4. Reestructuracin. Mediante reglas de transformacin una consulta en
el clculo relacional se transforma a una en el lgebra relacional. Se sabe que
puede existir ms de una transformacin. Por tanto, el enfoque seguido
usualmente es empezar con una consulta algebraica y aplicar transformaciones
para mejorarla.
Descomposicin de consultas

1. Normalizacin
La consulta de entrada puede ser arbitrariamente compleja dependiendo
de las facilidades provistas por el lenguaje. El objetivo de la normalizacin es
transformar una consulta a una forma normalizada para facilitar su
procesamiento posterior. La normalizacin consiste de dos partes:
El anlisis lxico y sintctico: En esta parte se verifica la validez de la
expresin que da origen a la consulta. Se verifica que las relaciones y atributos
invocados en la consulta estn acordes con la definicin en la base de datos.
Por ejemplo, se verifica el tipo de los operandos cuando se hace la
calificacin.
2. Anlisis
El anlisis de consultas permite rechazar consultas normalizadas para los
cuales no se requiere mayor procesamiento.
Una consulta se puede rechazar si alguno de sus atributos o nombres de
relacin no estn definidas en el esquema global. Tambin se puede rechazar si
las operaciones que se aplican a los atributos no son del tipo adecuado.
En una grfica de consulta, un nodo indica la relacin resultante, y
cualquier otro nodo representa la relacin operante.
Un arco entre dos nodos que no son resultados representa una junta,
mientras que un arco cuyo nodo destino es una relacin resultante representa
una proyeccin.
Una subgrfica importante de la grfica de conectividad es la grfica de
juntas, en la cual nicamente se consideran las juntas.
La grfica de juntas es particularmente importante durante la fase de
optimizacin.
3. Simplificacin
La consulta en forma normal conjuntiva puede contener predicados
redundantes.
Una evaluacin directa de la consulta con redundancia puede llevarnos a
realizar trabajo duplicado.
Ejemplo: consulta en SQL
SELECT TITULO
FROM E

WHERE (NOT (TITULO = "Programador"))


AND (TITULO = "Programador"
OR TITULO = "Ingeniero Elctrico")
AND NOT (TITULO = "Ingeniero Elctrico")
OR ENOMBRE = "J. Doe"

puede ser simplificada usando las reglas anteriores a


SELECT TITULO
FROM E
WHERE ENOMBRE = "J. Doe"

4. Reestructuracin.
El ltimo paso en la descomposicin de consultas, reescribe la consulta
en el lgebra relacional.
Esto se hace tpicamente en los siguientes paso:
a. Una transformacin directa del clculo relacional en el lgebra
relacional
para

b. Una reestructuracin de la consulta en el lgebra relacional


mejorar la eficiencia

Por claridad es costumbre representar la consulta en el lgebra


relacional por un rbol del lgebra relacional, el cual es un rbol en donde una
hoja representa a una relacin almacenada en la base de datos y un nodo no
hoja es una relacin intermedia producida por una operacin del lgebra
relacional.

2.- Localizacin de Datos


La entrada a esta capa es una consulta algebraica definida sobre
relaciones distribuidas.
El objetivo de esta capa es localizar los datos de la consulta usando la
informacin sobre la distribucin de datos.

Esta capa determina cuales fragmentos estn involucrados en la


consulta y transforma la consulta distribuida en una consulta sobre fragmentos

Localizacin de datos distribuidos


En la seccin anterior se presentaron tcnicas generales para la
descomposicin y reestructuracin de consultas expresadas en el clculo
relacional.
Esas tcnicas globales se aplican tanto a bases de datos centralizadas
como a distribuidas; no toman en cuenta la distribucin de datos.
Este es el papel de la capa de localizacin, la cual traduce una consulta
hecha sobre relaciones globales a una consulta algebraica expresada en
fragmentos fsicos.
La localizacin utiliza informacin almacenada en el esquema de
fragmentacin. Por simplicidad en esta seccin no se considera el caso de
fragmentos replicados.
La fragmentacin de una relacin se define a travs de las reglas de
fragmentacin, las cuales pueden ser expresadas como consultas relacionales.
Una relacin global puede ser reconstruida aplicando las reglas de
reconstruccin y derivando un programa en el lgebra relacional cuyos
operandos son los fragmentos.
A este programa se le conoce como programa de localizacin.
Una forma simple de localizar una consulta distribuida es generar una
consulta donde cada relacin global es sustituida por su programa de
localizacin.

Esto puede ser visto como el reemplazo de las hojas del rbol del
lgebra relacional de la consulta distribuida con subrboles que corresponden a
los programas de localizacin.
A la consulta obtenida por esta forma se le conoce como una consulta
genrica.
En general, el enfoque anterior puede ser ineficiente dado que varias
simplificaciones y reestructuraciones de la consulta genrica an pueden ser
realizadas.

Por cada tipo de fragmentacin se presentan tcnicas de reduccin que


general consultas simples y optimizadas:
A) Reduccin para fragmentacin horizontal primaria.
B) Reduccin para fragmentacin vertical.
C) Reduccin para fragmentacin horizontal derivada.
D) Reduccin para fragmentacin hbrida.

3.- Optimizacin Global de Consultas


Dada una consulta algebraica sobre fragmentos, el objetivo de esta capa
es hallar una estrategia de ejecucin para la consulta cercana a la ptima.
La estrategia de ejecucin para una consulta distribuida puede ser
descrita con los operadores del lgebra relacional y con primitivas de
comunicacin para transferir datos entre nodos.
Para encontrar una buena transformacin se consideran
caractersticas de los fragmentos, tales como, sus cardinalidades.

las

Un aspecto importante de la optimizacin de consultas es el


ordenamiento de juntas, dado que algunas permutaciones de juntas dentro de
la consulta pueden conducir a un mejoramiento de varios rdenes de
magnitud.

La salida de la capa de optimizacin global es una consulta algebraica


optimizada con operacin de comunicacin incluidas sobre los fragmentos.

La optimizacin global de consultas


procesamiento de consultas distribuidas.

es

la

tercera

etapa

del

Dada una consulta algebraica sobre fragmentos, el objetivo de esta capa


es hallar una estrategia de ejecucin para la consulta cercana a la ptima.
La salida de la capa de optimizacin global es una calendarizacin de
una consulta optimizada en el lgebra relacional la cual indica el orden en que
se ejecutan los operadores e incluye operaciones de comunicacin sobre los
fragmentos.

Ya que la seleccin del ordenamiento ptimo de operadores para una


consulta es computacionalmente intratable, el objetivo del optimizador es
encontrar la mejor estrategia, no necesariamente ptima, para ejecutar la
consulta.
La seleccin de la "mejor" estrategia requiere, por lo general, predecir
los costos de ejecucin de diferentes alternativas para ejecutar la consulta.
El costo de ejecucin se expresa como la combinacin pesada de los
costos de entrada/salida, de CPU y de comunicacin.

Modelo de costo
El costo de una estrategia de ejecucin distribuida se puede expresar
con respecto al costo total (tiempo de ejecucin) o al tiempo de respuesta.

El costo total es la suma de todas sus componentes (I/O, CPU y


comunicacin).
El tiempo de respuesta es el tiempo transcurrido desde el inicio de la
consulta hasta su terminacin.

Tiempo de Respuesta
El tiempo de respuesta es el tiempo transcurrido desde el inicio de la
consulta hasta su terminacin y se puede expresar como
Costo total = costo de I/O + costo de CPU + costo de comunicacin
Donde:
costo de CPU = costo de una instruccin * no. de instrucciones
secuenciales
costo de I/O = costo unitario de una operacin de I/O a disco *

4.-Optimizacin Local de Consultas


El trabajo de la ltima capa se efecta en todos los nodos con
fragmentos involucrados en la consulta.

Cada subconsulta que se ejecuta en un nodo, llamada consulta local, es


optimizada usando el esquema local del nodo.
Hasta este momento, se pueden eligen los algoritmos para realizar las
operaciones relacionales.
La optimizacin local utiliza los algoritmos de sistemas centralizados.
El ltimo paso en el esquema de procesamiento de consultas distribuidas
es la optimizacin de consultas locales.
Para ello se
centralizadas.

utilizan

las tcnicas de

optimizacin

de

consultas

El propsito es seleccionar el mejor camino de acceso para una consulta


local.

CONSULTAS DE TIPO INCORRECTO


Una consulta es de tipo incorrecto si uno de sus atributos o nombres de
relacin no estn definidos en el esquema global o si las operaciones que estn
siendo aplicadas a los atributos son del tipo incorrecto.
La tcnica usada para detectar consultas de tipo incorrecto es similar a
la comprobacin
Reglas heursticas para mejorar el procesamiento de consulta
Realizar las operaciones de seleccin lo antes posible.
Combinar el producto cartesiano con una operacin de seleccin
subyacente.
Utilizar la asociatividad de las operaciones binarias para reordenar los
nodos hoja.
Realizar operaciones de proyeccin.

Anda mungkin juga menyukai