Configuración del administrador: Consultas

En la página Queries de la sección Database del menú Admin, se muestra información sobre las últimas 50 consultas que Looker envió a tu base de datos. Para obtener información sobre las consultas que son anteriores a las 50 más recientes, consulta la sección Uso de Looker.

Información básica de la consulta

Columna Definición
Hora Es la hora de inicio de la consulta, que se muestra en la zona horaria de la aplicación.
Estado Es el estado de la búsqueda, que puede incluir lo siguiente:
  • Caché: Looker devolvió los resultados de su caché en lugar de ejecutar una consulta duplicada en la base de datos.
  • Complete: La consulta se completó correctamente.
  • Error: La búsqueda no se completó correctamente porque se produjo un error. Para ver los detalles, haz clic en el botón Detalles.
  • Cancelada: Looker o el usuario cancelaron la consulta.
  • Waiting for PDT: La consulta debe esperar a que se cree una tabla derivada persistente antes de poder ejecutarse.
  • Compilación de PDT: Se está compilando una tabla derivada persistente.
  • En cola: La consulta está esperando a ejecutarse porque ya hay demasiadas consultas en curso (Looker o tu base de datos pueden limitar las consultas en tu configuración de conexión).
  • En ejecución: La consulta se está ejecutando.
  • Desconocido: Looker no pudo determinar qué sucedió con esta consulta.
Conexión La conexión de Looker en la que se ejecutó esta consulta.
Usuario Es el usuario que ejecutó esta búsqueda, si se puede determinar. Algunas consultas no las ejecuta un usuario específico, por ejemplo, cuando Looker crea una tabla derivada persistente o cuando un usuario desconocido accede a un Look público.
Fuente Es la fuente de la consulta en Looker, como la página Explorar o el Ejecutor de SQL. Si es posible, también se muestra un vínculo al Look guardado o el ID de la consulta junto con el nombre del modelo y la función Explorar. Algunas consultas no tienen información adicional, como las que se ejecutan en Ejecutor de SQL. Las consultas que se emiten desde la interfaz de SQL abierta tienen un valor de Fuente de Sql_interface.
Entorno de ejecución Es el tiempo que tardó en ejecutarse la consulta. Esto incluye la construcción de la consulta, el tiempo que pasó en la cola, el tránsito hacia y desde la base de datos, y la ejecución de la consulta en la base de datos.

Si la consulta se está ejecutando, el tiempo de ejecución mostrará cuánto tiempo lleva en ejecución. En el caso de las consultas que se ejecutaron anteriormente, el tiempo de ejecución también mostrará una estimación del tiempo que tardará en finalizar la ejecución de la consulta. La estimación se basa en la duración de la última ejecución de la consulta y mostrará un mensaje como "de aproximadamente 2 s".
Botón Detalles Consulta la subsección El botón Detalles en esta página para obtener más información.

El botón Detalles

Si haces clic en el botón Detalles a la derecha de cualquier búsqueda, aparecerá información adicional sobre ella. El menú Detalles de la búsqueda incluye lo siguiente:

  • Una sección Info que incluye detalles sobre la búsqueda (consulta la siguiente tabla).
  • Una sección de SQL que muestra el código SQL sin procesar que se ejecutó en la base de datos Los comentarios de contexto no aparecerán en la información de Detalles de la búsqueda. Para evitar que los comentarios afecten el almacenamiento en caché de las consultas, Looker agrega los comentarios de contexto a los comandos SQL salientes justo antes de que se envíe el SQL a la base de datos.
  • Una sección Consulta de la interfaz de SQL que aparece cuando se emitió una consulta a través de la Interfaz de SQL abierta En esta sección, se muestra la consulta en SQL que se envió a Looker desde la herramienta de IE externa y puede ayudar a solucionar problemas y reproducirlos.
  • Un vínculo Abrir en el Ejecutor de SQL que abrirá la consulta en el Ejecutor de SQL

La sección Info incluye la siguiente información:

Sección Definición
ID del historial Es el ID del historial de la búsqueda, si está disponible.
Estado Es el estado de la consulta, como se describe en la tabla de información básica de la consulta.
Mensaje Si la consulta contiene un PDT, el comentario de generación del PDT aparecerá en este campo. Si la consulta no contiene un PDT, el campo no aparecerá.
Conexión La conexión de Looker en la que se ejecutó esta consulta.
Usuario Es el usuario que ejecutó esta búsqueda, si se puede determinar. Algunas consultas no las ejecuta un usuario específico, por ejemplo, cuando Looker crea una tabla derivada persistente o cuando un usuario desconocido accede a un Look público.
Fuente Es la fuente de la consulta en Looker, como la página Explorar o el Ejecutor de SQL. Si es posible, se muestra información adicional, como un vínculo al Look guardado, el ID de la consulta, el nombre del modelo, el nombre de la Exploración o los campos que se seleccionaron.
Hora de inicio Es la hora de inicio de la consulta, que se muestra en la zona horaria de la aplicación.
Hora de finalización Es la hora de finalización de la consulta, que se muestra en la zona horaria de la aplicación.
Entorno de ejecución Es el tiempo que tardó en ejecutarse la consulta.

Cancelación de consultas

En el caso de los dialectos que admiten la cancelación de consultas, Looker puede detener la ejecución de consultas de las siguientes maneras:

  • Automáticamente: Looker detiene automáticamente una consulta si el usuario cierra la pestaña del navegador en la que se está ejecutando la consulta.
  • De forma individual: Los administradores de Looker pueden detener una consulta en ejecución individual desde la Página de administrador Queries haciendo clic en el botón Stop de esa consulta. (Los usuarios con el permiso see_queries pueden ver la página Queries, pero solo los administradores de Looker pueden detener una consulta en ejecución).
  • De forma masiva: Los administradores de Looker pueden detener varias consultas en ejecución de forma simultánea en toda la instancia o para una conexión de base de datos específica con la función de limpieza de consultas de emergencia en la página Consultas.

Detener consultas de forma masiva

Si tu instancia de Looker se deteriora o deja de estar en buen estado debido a la acumulación de consultas (por ejemplo, las consultas pendientes agotan las ranuras de consultas disponibles o la página Queries se vuelve lenta o deja de responder), los administradores de Looker pueden detener la ejecución de consultas de forma masiva sin reiniciar la instancia.

Para detener las búsquedas de forma masiva, sigue estos pasos:

  1. En Looker, ve a la página Queries en el menú Admin.
  2. En la barra de direcciones del navegador, agrega ?cleanup=true al final de la URL y, luego, presiona Intro. Por ejemplo:

    https://INSTANCE_NAME.cloud.looker.com/admin/queries?cleanup=true
    
  3. La sección Emergency Query Cleanup aparece sobre la tabla de consultas.

  4. Realiza una de las siguientes acciones:

    • Detener todas las consultas en ejecución en la instancia: Haz clic en Detener TODAS las consultas en ejecución.
    • Detén todas las consultas en ejecución para una conexión específica: Selecciona una conexión de base de datos en la lista desplegable Conexión y, luego, haz clic en Detener consultas en la conexión.
  5. En el diálogo de confirmación, confirma que deseas detener las consultas en ejecución.

Si una conexión de base de datos en mal estado o que no responde provoca una acumulación repetida de consultas, los administradores también pueden inhabilitar temporalmente la conexión con la opción Inhabilitar conexión en la página Configuración de conexiones.

Dialectos admitidos para la cancelación de consultas

Para que Looker detenga las consultas (ya sea automáticamente cerrando la pestaña del navegador, de forma individual en la página Queries o de forma masiva con la limpieza de consultas de emergencia), el dialecto de tu base de datos debe admitir la detención de consultas. En la siguiente tabla, se muestran los dialectos que admiten la cancelación de consultas en la versión más reciente de Looker:

Dialecto ¿Es compatible?
Actian Avalanche
Amazon Athena
Amazon Aurora MySQL
Amazon Redshift
Amazon Redshift 2.1+
Amazon Redshift Serverless 2.1+
Apache Druid
Apache Druid 0.13.x - 0.17.x
Apache Druid 0.18+
Apache Hive 2.3+
Apache Hive 3.1.2+
Apache Spark 3+
ClickHouse
Cloudera Impala 3.1+
Cloudera Impala 3.1+ with Native Driver
Cloudera Impala with Native Driver
DataVirtuality
Databricks
Denodo 7
Denodo 8 & 9
Dremio
Dremio 11+
Exasol
Google BigQuery Legacy SQL
Google BigQuery Standard SQL
Google Cloud AlloyDB for PostgreSQL
Google Cloud PostgreSQL
Google Cloud SQL
Google Spanner
Greenplum
HyperSQL
IBM Netezza
MariaDB
Microsoft Azure PostgreSQL
Microsoft Azure SQL Database
Microsoft Azure Synapse Analytics
Microsoft SQL Server 2008+
Microsoft SQL Server 2012+
Microsoft SQL Server 2016
Microsoft SQL Server 2017+
MongoBI
MongoSQL
MySQL
MySQL 8.0.12+
Oracle
Oracle ADWC
PostgreSQL 9.5+
PostgreSQL pre-9.5
PrestoDB
PrestoSQL
SAP HANA
SAP HANA 2+
SingleStore
SingleStore 7+
Snowflake
Teradata
Trino
Vector
Vertica

Tiempos de espera de las consultas y encolamiento

Looker detiene las consultas que han estado en la cola durante demasiado tiempo. Esta operación se denomina tiempo de espera. Es posible que se apliquen varios tiempos de espera a tu búsqueda:

  • Tiempo de espera agotado del grupo de conexiones y consultas simultáneas máximas: Para evitar la sobrecarga de tu base de datos con consultas simultáneas, Looker mantiene las consultas simultáneas en exceso en la cola de consultas de Looker y detendrá las consultas que permanezcan en la cola durante demasiado tiempo. De forma predeterminada, se permiten 75 consultas simultáneas como máximo por conexión. Las consultas adicionales que superen el límite de conexión se agotarán después de 0 segundos. Para cambiar estos valores predeterminados, configura los parámetros de Max connections, Max concurrent queries for this connection y Connection pool timeout en la página Connections Settings de una conexión.

  • Límite de consultas y tiempo de espera por usuario: Para evitar que un solo usuario llene la cola de consultas de Looker, cada usuario tiene una cantidad máxima de consultas simultáneas permitidas y un tiempo de espera de cola correspondiente para las consultas que se ponen en cola debido al límite de consultas simultáneas. El límite por usuario se aplica tanto a los usuarios que acceden a Looker con el proceso de autenticación normal como a los que acceden con credenciales de usuario de la API. Existen dos formas de definir la cantidad máxima de consultas simultáneas por usuario para las conexiones en tu instancia de Looker:

    • La opción de inicio per-user-query-limit Este es un parámetro de configuración para toda la instancia que establece el valor predeterminado para las conexiones en tu instancia. La opción de inicio per-user-query-limit limita la cantidad de consultas simultáneas por usuario, por conexión y por nodo en la instancia de Looker. El máximo predeterminado de 15 consultas simultáneas por usuario se aplica a cada conexión válida y, si tu instancia de Looker está agrupada en clústeres, a cada nodo del clúster. De forma predeterminada, cada usuario puede ejecutar un máximo de 15 consultas simultáneas por conexión y por nodo, con un tiempo de espera de 600 segundos. Por ejemplo, si tienes un clúster de 5 nodos con un per-user-query-limit de 15, cada nodo permitirá 15 consultas simultáneas por usuario para esta conexión, lo que da un total de 75 consultas en todos los nodos (15 * 5 = 75).

    Puedes cambiar el límite de consultas por usuario para una conexión con el parámetro de configuración Max concurrent queries per user for this connection en la página Connection Settings de la conexión. Si tu instancia de Looker está alojada por el cliente, puedes cambiar la cantidad máxima predeterminada de consultas simultáneas por usuario configurando la opción de inicio --per-user-query-limit y puedes configurar el tiempo de espera de la cola con la opción de inicio --per-user-query-timeout.

    • La opción Cantidad máx. de consultas simultáneas por usuario para esta conexión en la Configuración de la conexión de una conexión. El parámetro de configuración Cantidad máx. de consultas simultáneas por usuario para esta conexión tiene un valor predeterminado de 25 y se aplica por usuario y por conexión, pero no por nodo. Por ejemplo, si tienes un clúster de 5 nodos y estableces este valor en 15, cada nodo permitirá 3 consultas simultáneas por usuario para esta conexión (15 / 5 = 3), lo que da un total de 15 consultas en todos los nodos. En el caso de una conexión, si se proporciona un valor para el parámetro de configuración Cantidad máx. de consultas simultáneas por usuario para esta conexión, el valor de Cantidad máx. de consultas simultáneas por usuario para esta conexión anulará la opción de inicio per-user-query-limit para la conexión.
  • Límite de tiempo de espera y de consultas del programador: Para evitar la sobrecarga del proceso del programador de Looker, una instancia de Looker puede ejecutar un máximo de 10 consultas programadas simultáneas, y el tiempo de espera para las consultas en la cola del programador es de 1,200 segundos. Si tu instancia de Looker está alojada por el cliente, puedes cambiar estos valores predeterminados configurando las opciones de inicio --scheduler-query-limit y --scheduler-query-timeout.

  • Límite de tiempo de espera y de consultas del renderizador: Para evitar la sobrecarga del proceso del renderizador de Looker, una instancia de Looker puede renderizar un máximo de 2 descargas simultáneas basadas en imágenes, como los formatos PDF y PNG. Si tu instancia de Looker está alojada por el cliente, puedes cambiar este valor predeterminado configurando la opción de inicio --concurrent-render-jobs.

  • Tiempo de espera del webhook: Looker intentará entregar datos a un webhook durante un máximo de 30 minutos. Si Looker no puede comunicarse con el destino del webhook en 30 minutos, se agotará el tiempo de espera de la consulta. Este tiempo de espera no se puede configurar.
    • Tiempo de espera del proxy: Las instancias alojadas por el cliente suelen usar proxies con un tiempo de espera predeterminado de 60 segundos. Recomendamos que se aumente este tiempo de espera a 60 minutos. Consulta la publicación de Comunidad de Looker Ejecuta Looker detrás de un servidor proxy o un balanceador de cargas para obtener más información.

    • Tiempo de espera de la base de datos: La mayoría de las bases de datos tienen reglas para las colas y los tiempos de espera que son independientes de las colas y los tiempos de espera de Looker. Por ejemplo, es posible que una consulta haya salido de la cola de Looker, pero que aún esté en la cola de tu base de datos. Consulta la documentación de tu base de datos para obtener más información sobre cómo personalizar los tiempos de espera de las consultas de la base de datos.