Análisis del plan de consulta - Amazon Redshift

Análisis del plan de consulta

Ejecute el comando EXPLAIN para obtener un plan de consulta.

Antes de analizar el plan de consulta, deberá estar familiarizado con la lectura del plan. Si desconoce cómo se lee un plan de consulta, le recomendamos leer Creación e interpretación de un plan de consultas antes de continuar.

Pasos para analizar los datos proporcionados por el plan de consulta

  1. Identifique los pasos que tienen el costo más elevado. Céntrese en optimizar esos pasos cuando continúe con los demás pasos.

  2. Analice los tipos de combinaciones:

    • Bucle anidado: estas combinaciones suelen producirse cuando se omite una condición de combinación. Para conocer las soluciones recomendadas, consulte Bucle anidado.

    • Hash y hash join: se utilizan para combinar tablas en las que las columnas de combinación no son claves de distribución ni tampoco claves de ordenación. Para conocer las soluciones recomendadas, consulte Combinación hash.

    • Merge join: no es necesario realizar cambios.

  3. Tenga en cuenta qué tabla se utiliza para la combinación interna y cuál para la combinación externa. El motor de consultas, por lo general, selecciona la tabla más pequeña para la combinación interna y la tabla más grande para la combinación externa. Si no ocurre dicha elección, es probable que sus estadísticas estén desactualizadas. Para conocer las soluciones recomendadas, consulte Faltan estadísticas de tablas o están desactualizadas.

  4. Analice si hay algunas operaciones de ordenación costosas. En caso afirmativo, consulte Filas desordenadas o mal ordenadas para conocer las soluciones recomendadas.

  5. Busque los siguientes operadores de difusión donde haya operaciones costosas:

    • DS_BCAST_INNER: indica que la tabla se transmite a todos los nodos de computación. Esto está bien para una tabla pequeña, pero no es ideal para una tabla más grande.

    • DS_DIST_ALL_INNER: indica que toda la carga de trabajo está en un único sector.

    • DS_DIST_BOTH: indica una gran redistribución.

    Para conocer las soluciones recomendadas para estas situaciones, consulte Distribución de datos poco óptima.