Búsqueda y aplicación de los cambios realizados a los planes de acceso después de desplegar una aplicación desde un sistema de prueba a un sistema de producción

Puede saber si los planes de acceso para las sentencias SQL en un sistema de prueba han seguido igual cuando ha desplegado las sentencias SQL en un sistema de producción. Si alguno de los planes de acceso en el sistema de producción necesita una mejora, puede ajustar las sentencias SQL problemáticas o volver a los planes de acceso que se utilizan en el sistema de prueba.

Antes de empezar

Acerca de esta tarea

En este procedimiento, puede crear una carga de trabajo de consulta de las sentencias SQL para una aplicación que esté probando. Puede ajustar esta carga de trabajo de consulta y desplegar la aplicación en un sistema de producción. A continuación, en ese sistema de producción, debe crear una carga de trabajo de consulta de las mismas sentencias SQL. Finalmente, compare los planes de acceso que las sentencias SQL han utilizado en el sistema de prueba con los planes de acceso que las sentencias utilizan en el sistema de producción. Si existen cambios perjudiciales para los planes de acceso del sistema de producción, puede corregir los problemas creando y ajustando una carga de trabajo de consulta de las sentencias problemáticas o volviendo a los planes de acceso desde el sistema de prueba.

Procedimiento

Para identificar y dirigir los cambios a planes de acceso debido al despliegue de una aplicación desde un sistema de prueba a un sistema de producción:

  1. En su entorno de prueba, cree una carga de trabajo de consulta de las sentencias SQL que estén en su aplicación.
    1. Capture las sentencias SQL.
    2. Después de capturar sentencias SQL, pulse el botón Guardar todo en una carga de trabajo.
    3. En la ventana Especificar nombre de carga de trabajo y descripción, especifique información para identificar la nueva carga de trabajo de consulta.
    Se abre la página Gestionar y ajustar cargas de trabajo en la sección Gestionar. La nueva carga de trabajo de consulta aparece en la tabla en esta página. El estado de la carga de trabajo de consulta es CAPTURADA.
  2. Ejecute el asesor de estadísticas de carga de trabajo e implemente sus recomendaciones.
  3. Asegúrese de que la antememoria local del catálogo del sistema está actualizada.
  4. Especifique para volver a explicar la carga de trabajo de consulta cuando ejecute el asesor de índices de carga de trabajo.
    1. A la izquierda del asistente de flujo de trabajo, pulse el separado Invocar, si la sección Invocar no está todavía abierta.
    2. En la página Ejecutar asesores de carga de trabajo, seleccione la opción Volver a recopilar información de EXPLAIN antes de ejecutar asesores de carga de trabajo.
  5. Ejecute el asesor de estadísticas de carga de trabajo de nuevo para saber si tiene recomendaciones adicionales. Si es así, impleméntelas.
  6. Si ha implementado recomendaciones adicionales desde el asesor de estadísticas de carga de trabajo, asegúrese de que la memoria caché local del catálogo del sistema está actualizada.
  7. Especifique para volver a explicar la carga de trabajo de consulta cuando ejecute el asesor de índices de carga de trabajo.
    1. A la izquierda del asistente de flujo de trabajo, pulse el separado Invocar, si la sección Invocar no está todavía abierta.
    2. En la página Ejecutar asesores de carga de trabajo, seleccione la opción Volver a recopilar información de EXPLAIN antes de ejecutar asesores de carga de trabajo.
  8. Ejecute el Asesor de índices de carga de trabajo e implemente sus recomendaciones.
  9. Si la carga de trabajo de consulta está ajustada a sus requisitos de rendimiento, despliegue la aplicación en su sistema de producción.
  10. En el Explorador de orígenes de datos, conecte con el sistema de producción.
  11. Pulse con el botón derecho del ratón en la conexión y seleccione Analizar y ajustar > Iniciar ajuste.
  12. Cree una carga de trabajo de consulta idéntica o similar a la carga de trabajo de consulta que ha creado en el sistema de prueba.
    1. Capture las sentencias SQL.
    2. Después de capturar sentencias SQL, pulse el botón Guardar todo en una carga de trabajo.
    3. En la ventana Especificar nombre de carga de trabajo y descripción, especifique información para identificar la nueva carga de trabajo de consulta.
    Se abre la página Gestionar y ajustar cargas de trabajo en la sección Gestionar. La nueva carga de trabajo de consulta aparece en la tabla en esta página. El estado de la carga de trabajo de consulta es CAPTURADA.
  13. Explique la carga de trabajo de consulta.
    Nota: Si ha capturado las sentencias SQL desde los orígenes siguientes y ha decidido guardar la información de EXPLAIN al crear la carga de trabajo de consulta, no debe explicar la carga de trabajo de consulta.
    • DB2 para Linux, UNIX y Windows: supervisores de sucesos de actividades, tablas EXPLAIN, paquetes, antememoria de paquetes
    • DB2 para z/OS: planes de catálogo, paquetes y caché de sentencias dinámicas
    1. En la página Gestionar cargas de trabajo, seleccione la carga de trabajo de consulta y seleccione Explicar la carga de trabajo seleccionada en el campo Más acciones.
    2. En la ventana Recopilar información de EXPLAIN, especifique los valores opcionales para el entorno de ejecución de las sentencias SQL que se encuentran en la carga de trabajo de consulta.
  14. Vuelva a la instancia del asistente de flujo de trabajo con la que está conectado al sistema de prueba. Si la instancia ya no está abierta, en el Explorador de orígenes de datos conéctese al sistema, pulse con el botón derecho del ratón la conexión y seleccione Analizar y ajustar > Iniciar ajuste.
  15. Pulse la pestaña Gestionar del lado izquierdo del asistente de flujos de trabajo.
  16. En la página Gestionar cargas de trabajo, seleccione la carga de trabajo de consulta que haya creado en el paso 1.
  17. Pulse el botón Comparar.
  18. Seleccione la opción Comparar los planes de acceso para la carga de trabajo seleccionada con los planes de acceso para otra carga de trabajo.
  19. En el asistente Comparar planes de acceso con los planes de acceso de otra carga de trabajo, seleccione el sistema de producción y pulse Siguiente.
  20. Seleccione la segunda carga de trabajo de consulta que ha creado y pulse Siguiente.
  21. Para la carga de trabajo de consulta del sistema de prueba y la carga de trabajo de consulta del sistema de producción, seleccione una instantánea de explicación para utilizarla en la comparación. A continuación, pulse Finalizar.

Qué hacer a continuación

En la página Historial de comparación, efectúe una doble pulsación en la entrada de la comparación. En la página Ver resultados de comparación mediante las instantáneas de explicación de carga de trabajo y sentencias SQL, revise la tabla Sentencias para buscar sentencias con diferencias en las dos instantáneas de explicación. Si necesita compartir los resultados con otras personas, seleccione Generar informe HTML de comparación en el campo Más acciones sobre la tabla.

Si considera que los planes de acceso o los costes estimados de las sentencias SQL del sistema de producción necesitan una mejora, puede crear una carga de trabajo de consulta desde esas sentencias. Puede ajustar la carga de trabajo de consulta. En el campo Más acciones en la página Ver resultados de comparación mediante las instantáneas de explicación de carga de trabajo y sentencias SQL, seleccione Crear una nueva carga de trabajo de consulta para ajustar.

Un enfoque diferente consistiría en sustituir los planes de acceso del sistema de producción por los planes de acceso del sistema de prueba. En el campo Más acciones en la página Ver resultados de comparación mediante las instantáneas de explicación de carga de trabajo y sentencias SQL, seleccione Bloquee los planes de acceso para todas las sentencias SQL. Si escoge este enfoque, debe entender que los cambios realizados al sistema que podrían mejorar los planes de acceso, mejorando estadísticas o aplicando el mantenimiento que contiene mejoras para el optimizador, no tendrán efecto en los planes de acceso que ha bloqueado. Sin embargo, los planes de acceso no experimentarán cambios repentinos y se ejecutarán como se espera.


Feedback