Gestión de vías de acceso de consulta

Las rutas de acceso que utiliza Db2 para procesar las sentencias SQL se encuentran entre los aspectos más importantes del rendimiento de las consultas.

Acerca de esta tarea

Iniciar la información de la interfaz de programación específica del programa.

La vía de acceso para una sentencia de SQL especifica cómo Db2 accede a los datos que especifica la consulta. Especifica los índices y las tablas a las que se accede, los métodos de acceso que se utilizan y el orden en el que se accede a los objetos.

Db2 selecciona las vías de acceso de la mayoría de las sentencias de SQL estático cuando el programa de aplicación está enlazado o se vuelve a enlazar a un paquete. Sin embargo, las vías de acceso de algunas sentencias, como las sentencias que incluyen valores de variable y marcadores de parámetro, deben seleccionarse en tiempo de ejecución. Db2 selecciona las rutas de acceso para las sentencias SQL dinámicas cuando se emiten las sentencias.

Para seleccionar vías de acceso eficientes, Db2 se basa en los elementos siguientes:

  • Consultas que utilizan predicados eficaces.
  • Índices que permiten acceso a datos eficaz.
  • Estadísticas que describen los datos de manera suficiente y exacta.

Estos elementos se encuentran entre los pilares de un rendimiento correcto de las consultas. Es aconsejable verificarlas antes de intentar aplicar métodos especiales para determinar la selección de vías de acceso.

Consejo : Las capacidades de ajuste de consultas que pueden ayudarle con esta tarea, como la explicación visual y el asesor de estadísticas, están disponibles en IBM® Db2 Administration Foundation for z/OS® y IBM Db2 for z/OS Developer Extension.

Procedimiento

Para gestionar vías de acceso de consultas:

  1. Codifique consultas con predicados que posibiliten vías de acceso eficaces.
    Para más información, consulte Escribir consultas SQL eficientes.
  2. Asegúrese de que existan estadísticas precisas para imponer las vías de acceso a las consultas.
    Para obtener más información, consulte Mantenimiento de estadísticas de la base de datos de Db2.
    En particular, puede utilizar los comentarios de estadísticas de optimización para identificar estadísticas que faltan y que están en conflicto que pueden impedir una selección de vía de acceso eficiente.Para obtener más información, consulte Aplicar recomendaciones estadísticas a perfiles estadísticos automáticamente.
    Determinadas herramientas de optimización de consulta pueden ayudarle también a identificar estadísticas que posibiliten vías de acceso eficaces para las consultas.
  3. Cree índices que posibiliten vías de acceso eficaces para las consultas.
    Para más información, consulte Diseño de índices para el rendimiento. Determinadas herramientas de optimización de las consultas pueden ayudarle también a identificar índices para las consultas.
  4. En el caso de las consultas de excepción, plantéese utilizar métodos para determinar la selección de vías de acceso.
    Importante : Realice las siguientes acciones solo después de asegurarse de que se aplican los fundamentos de la selección de rutas de acceso eficientes, que se describen en los pasos anteriores.
    Puede llevar a cabo las siguientes acciones para determinar las vías de acceso, en función de cada situación concreta:
    • Habilite la reoptimización en tiempo real de las consultas, cuando es posible que se conozcan los valores literales de los marcadores de parámetro, variables de host y registros especiales.
    • Especifique parámetros de optimización en el nivel de sentencia.
    • Sustituya la selectividad que se utiliza en predicados cuyas estimaciones son difíciles o imposibles de realizar creando sustituciones de selectividad de predicados en el nivel de sentencia.
    • Especifique una vía de acceso en el nivel de sentencia.
    • Especifique una vía de acceso en una instancia de PLAN_TABLE.
    • Añada predicados de uso especial a la consulta y aplique otros métodos especiales.

Qué hacer a continuación

También puede aplicar determinados métodos para prevenir o gestionar los cambios de las vías de acceso.