El objetivo del procesamiento
de consultas en un ambiente distribuido es transformar una consulta sobre
una base de datos distribuida en una especificación de alto nivel a una estrategia de ejecución eficiente
expresada en un lenguaje de bajo nivel sobre bases de datos locales.
El problema de optimización de consultas es minimizar una
función de costo tal que función de costo total = costo de I/O + costo de CPU +costo
de comunicación.
Por ejemplo:
En las redes de área amplia (WAN), normalmente el costo de comunicación domina dado que hay una velocidad de comunicación relativamente
baja, los canales están saturados y el trabajo adición al requerido por los
protocolos de comunicación es considerable.
Así, los algoritmos diseñados para trabajar en una WAN, por
lo general, ignoran los costos de CPU y de I/O. En redes de área local (LAN) el
costo de comunicación no es tan dominante, así que se consideran los tres factores
con pesos variables.
Optimización global de consultas
Dada una consulta algebraica sobre fragmentos, el objetivo de
esta capa es hallar una estrategia de ejecución para la consulta cercana a la
óptima.
La estrategia de ejecución para una consulta distribuida puede ser descrita
con los operadores del álgebra relacional y con primitivas de comunicación para
transferir datos entre nodos.
Un aspecto importante de la optimización 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 optimización global es una consulta
algebraica optimizada con operación de comunicación incluida sobre los
fragmentos.
Optimización local de consultas
El trabajo de la última capa se efectúa en todos los nodos con fragmentos
involucrados en la consulta. Cada consulta que se ejecuta en un nodo,
llamada consulta local, es optimizada usando el esquema local del nodo. Hasta
este momento, se eligen los algoritmos para realizar las operaciones
relacionales. La optimización local utiliza los algoritmos de sistemas
centralizados.
Fuente de informacion: http://es.scribd.com/doc/44436671/Unidad-III
No hay comentarios:
Publicar un comentario