Compartir vía


Perfil de consulta

Puede usar un perfil de consulta para visualizar los detalles de la ejecución de una consulta. El perfil de consulta ayuda a solucionar los cuellos de botella de rendimiento durante la ejecución de la consulta. Por ejemplo:

  • Puede visualizar cada tarea de consulta y sus métricas relacionadas, como el tiempo invertido, el número de filas procesadas, las filas procesadas y el consumo de memoria.
  • Puede identificar la parte más lenta de la ejecución de una consulta de un vistazo y evaluar los impactos de las modificaciones en la consulta.
  • Puede detectar y corregir errores comunes en instrucciones SQL, como la expansión de combinaciones o recorridos de tabla completos.

Importante

El tiempo registrado en el historial de consultas de una consulta SQL es solo el tiempo que el almacenamiento de SQL dedica realmente a ejecutar la consulta. No registra ninguna sobrecarga adicional asociada con la preparación para ejecutar la consulta, como la puesta en cola interna o el tiempo adicional relacionado con el proceso de carga y descarga de datos.

Requisitos

Para ver un perfil de consulta, debe ser el propietario de la consulta o tener el permiso CAN MANAGE en el almacén de SQL que ejecutó la consulta.

Visualización de un perfil de consulta

Después de ejecutar una consulta en el editor de SQL o en un cuaderno, puede abrir el perfil de consulta al hacer clic en el tiempo transcurrido en la parte inferior de la salida.

Abrir el historial de consultas desde la salida del editor o el cuaderno

También puede ver el perfil de consulta desde el historial de consultas de la siguiente manera:

  1. Visualice el historial de consultas.

  2. Haga clic en el nombre de una consulta. Aparece información general de las métricas de consulta.

    Vista sencilla del resumen de ejecución de consultas

  3. Haga clic en Ver perfil de consulta.

    Nota:

    Si se muestra el perfil de consulta no disponible, no hay ningún perfil disponible para esta consulta. No hay perfil de consulta disponible para las consultas que se ejecutan desde la caché de consulta. Para evitar la caché de consulta, realice un cambio trivial en la consulta, como cambiar o quitar la instrucción LIMIT.

  4. Para ver el perfil de consulta en la vista de gráfico (valor predeterminado), haga clic en Vista de gráfico. Para ver el perfil de consulta como un árbol, haga clic en Vista de árbol.

    • La vista Graph está optimizada para visualizar cómo fluyen los datos de un nodo a otro.
    • La vista de árbol está optimizada para encontrar rápidamente problemas con el rendimiento de la consulta, como identificar el operador de ejecución más largo.
  5. En la vista de gráfico o en la vista de árbol, puede hacer clic en una de las pestañas de la parte superior de la página para ver detalles sobre cada una de las tareas de la consulta.

    • Tiempo invertido: suma del tiempo de ejecución que han invertido todas las tareas en cada operación.
    • Filas: número y tamaño de las filas afectadas por cada una de las tareas de la consulta.
    • Máximo de memoria: memoria máxima que ha consumido cada una de las tareas de la consulta.

    Nota:

    Algunas operaciones que no son de Photon se ejecutan como un grupo y comparten métricas comunes. En este caso, todas las subtareas tienen el mismo valor que la tarea primaria para una métrica determinada.

  6. En la vista de gráfico, si una tarea tiene subtareas, haga clic en un nodo para mostrar sus detalles. En la vista de árbol, puede hacer clic en > para expandirlo.

  7. Se muestra la operación de cada tarea. De forma predeterminada, las tareas y las métricas de algunas operaciones están ocultas. Es poco probable que estas operaciones sean la causa de cuellos de botella de rendimiento. Para ver información de todas las operaciones y para ver métricas adicionales, haga clic en menú Kebab en la parte superior de la página, luego haga clic en Habilitar modo detallado. Las operaciones más habituales son las siguientes:

    • Examen: los datos se leyeron de un origen de datos y se generaron como filas.
    • Combinación: las filas de varias relaciones se combinaron (intercaladas) en un único conjunto de filas.
    • Unión: las filas de varias relaciones que usan el mismo esquema se concatenaron en un único conjunto de filas.
    • Orden aleatorio: los datos se redistribuyeron o se repartieron. Las operaciones de orden aleatorio suponen un coste de recursos, ya que mueven datos entre ejecutores del clúster.
    • Hash/Ordenación: las filas se agruparon por una clave y se evaluaron mediante una función de agregado como SUM, COUNT o MAX dentro de cada grupo.
    • Filtro: la entrada se filtra según un criterio, como una cláusula WHERE, y se devuelve un subconjunto de filas.
    • Intercambio (reutilizado): se usa un intercambio aleatorio o de difusión para redistribuir los datos entre los nodos del clúster en función de las particiones deseadas.
    • Límite de recopilación: el número de filas devueltas se truncó mediante una instrucción LIMIT.
    • Tomar ordenadas y proyecto: se devolvieron las N primeras filas del resultado de la consulta.
  8. Para ver el perfil de consulta en la interfaz de usuario de Apache Spark, haga clic en menú Kebab en la parte superior de la página y luego haga clic en Abrir en la interfaz de usuario de Spark.

  9. Para cerrar el perfil de consulta importado, haga clic en X en la parte superior de la página.

Para obtener más detalles sobre la información disponible en el perfil de consulta, consulte Visualización de detalles sobre el perfil de consulta.

Visualización de detalles sobre el perfil de consulta

El perfil de consulta enumera las tareas de nivel superior de la consulta en orden inverso, con la última tarea en primer lugar. A la izquierda, tres columnas muestran la secuencia de tareas, el nombre de la operación y un gráfico de la métrica seleccionada para esa tarea. Siga estos pasos para familiarizarse con las distintas partes del perfil de consulta.

  1. Haga clic enHora para ver la duración de cada subtarea.
  2. Haga clic en Filas para ver el número y el tamaño de las filas que devuelve la consulta.
  3. Haga clic en Memoria para ver la memoria que consume cada tarea de consulta. Si la tarea tiene subtareas, puede hacer clic en > para ver detalles sobre cada subtarea.
  4. A la derecha, haga clic en Información general para ver la instrucción SQL de la consulta, el estado, las horas de inicio y finalización, la duración, el usuario que ejecutó la consulta y el almacén donde se ejecutó la consulta.
  5. Haga clic en una tarea para ver detalles sobre la tarea, como su descripción y métricas sobre la duración de la tarea, la memoria consumida, el número y el tamaño de las filas devueltas y el linaje.
  6. Para cerrar los detalles de la subtarea, haga clic en X.
  7. Haga clic en el nombre del almacén de SQL para ir a sus propiedades.
  8. Para ver el perfil de consulta en la interfaz de usuario de Apache Spark, haga clic en menú Kebab en la parte superior de la página y luego haga clic en Abrir en la interfaz de usuario de Spark.
  9. Para cerrar el perfil de consulta, haga clic en X en la parte superior de la página.

Uso compartido de un perfil de consulta

Para compartir un perfil de consulta con otro usuario:

  1. Visualice el historial de consultas.
  2. Haga clic en el nombre de la consulta.
  3. Para compartir la consulta, tiene dos opciones:
    • Si el otro usuario tiene el permiso CAN MANAGE en la consulta, puede compartir la dirección URL del perfil de consulta con este usuario. Haz clic en Compartir. La dirección URL se copia en el Portapapeles.
    • Si el otro usuario no tiene el permiso CAN MANAGE o no es miembro del área de trabajo, usted puede descargar el perfil de consulta como un objeto JSON. Descarga. El archivo JSON se descarga en el sistema local.

Importación de un perfil de consulta

Para importar el archivo JSON para un perfil de consulta:

  1. Visualice el historial de consultas.

  2. Haz clic en el menú de kebab menú Kebab en la esquina superior derecha y selecciona Importar perfil de consulta (JSON).

  3. En el explorador de archivos, seleccione el archivo JSON que se ha compartido con usted y haga clic en Abrir. El archivo JSON se carga y se muestra el perfil de consulta.

    Al importar un perfil de consulta, se carga dinámicamente en la sesión del explorador y no se conserva en el área de trabajo. Debe volver a importarlo cada vez que quiera verlo.

  4. Para cerrar el perfil de consulta importado, haga clic en X en la parte superior de la página.

Pasos siguientes