Saltar al contenido
uencoder

Join Order Optimization

La optimización del orden de joins selecciona el mejor orden para joins de múltiples tablas; con N! órdenes para N tablas, requiere búsqueda con poda.

Propósito

Entender las diferencias de rendimiento entre órdenes de join y evitar productos cartesianos y malos ordenamientos.

Mecanismo

La programación dinámica (System-R) enumera todos los órdenes para el óptimo en O(3^N). Los joins grandes usan poda voraz o heurística. Los árboles left-deep restringen el espacio de búsqueda. El orden del join afecta enormemente los tamaños de resultados intermedios.

Casos de uso

  • Ajuste de joins de múltiples tablas
  • Análisis de planes de ejecución
  • Interioridades del optimizador

Herramientas relacionadas

References