Puntos para la Optimización de consultas Distribuidas
• SGBD: cuenta con varios algoritmos para operaciones relacionales como selección (σ) y
reunión ( |X| )
• Optimizador considera los algoritmos :
– Disponibles en el SGBD
– Aplicables al diseño físico de los ficheros que participan en la consulta
•Técnicas de optimización:
–Físicao estimación de coste:
• Elegir el plan de menor coste estimado
–Sintáctica o reglas heurísticas
• Ordenar las operaciones
• Utiliza un árbol o un grafo de consultas
–Semántica
•Generalmente se combinan las dos primeras técnicas
Optimización Global de Consultas
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. Para encontrar una buena
transformación se consideran las características de los fragmentos,
tales como, sus cardinalidades.
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 incluidas 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 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.