Utilización de EXPLAIN para comprender la vía de acceso

Se puede utilizar el mandato EXPLAIN para determinar las vías de acceso para las partes SELECT de las sentencias.

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.

Esta información describe lo que proporciona EXPLAIN y cómo puede obtener información de EXPLAIN. La información de la tabla de plan puede ayudarle cuando necesite realizar las tareas siguientes:

  • Determinar la vía de acceso que Db2 elige para una consulta
  • Diseñar bases de datos, índices y programas de aplicación
  • Determinar cuándo se debe volver a enlazar una aplicación

Para cada acceso a una sola tabla, EXPLAIN indica si Db2 utiliza acceso de índice o una exploración de espacio de tabla. Para índices, EXPLAIN indica cuántos índices y columnas de índice se utilizan y qué métodos de E/S se utilizan para leer las páginas. Para uniones de tablas, EXPLAIN indica el método y el tipo de unión, el orden en el que Db2 se une a las tablas, y las ocasiones en que clasifica las filas y las razones.

Los pasos siguientes resumen cómo obtener información de EXPLAIN:

  1. Cree una tabla de plan.

    Para poder utilizar EXPLAIN, primero debe crear una tabla de plan para que contenga los resultados de EXPLAIN.

  2. Llene la tabla de plan.

    Puede llenar la tabla de plan ejecutando la sentencia EXPLAIN de SQL. También puede llenar una tabla de plan al vincular o volver a vincular un plan o paquete especificando la opción EXPLAIN(YES). EXPLAIN obtiene información sobre las vías de acceso para todas las sentencias de SQL explicables de un paquete o de los DBRM de un plan.

  3. Seleccione la información de la tabla de plan.

    Varios procesos pueden insertar filas en la misma tabla de plan. Para comprender las vías de acceso, debe recuperar las filas de una consulta determinada en el orden adecuado.

EXPLAIN le ayuda a responder a preguntas sobre rendimiento; las respuestas le proporcionan la información que necesita para mejorar el rendimiento. EXPLAIN indica si Db2 ha utilizado un índice para acceder a datos, si se han realizado clasificaciones, si se ha utilizado el proceso paralelo, etc.

A medida que adquiera experiencia trabajando con Db2, puede utilizar la tabla de planes para proporcionar sugerencias de optimización a Db2 que influyen en la selección de vías de acceso.