La pagina Queries (Query) nella sezione Database del menu Admin (Amministrazione) elenca le informazioni sulle ultime 50 query che Looker ha inviato al tuo database. Per informazioni sulle query precedenti alle 50 più recenti, consulta la sezione Usage (Utilizzo) di Looker.
Informazioni di base sulle query
| Colonna | Definizione |
|---|---|
| Ora | L'ora di inizio della query, visualizzata nel fuso orario dell'applicazione. |
| Stato | Lo stato della query, che può includere:
|
| Connessione | La connessione Looker in cui è stata eseguita questa query. |
| Utente | L'utente che ha eseguito questa query, se è possibile determinarlo. Alcune query non vengono eseguite da un utente specifico, ad esempio quando Looker crea una tabella derivata permanente o quando un utente sconosciuto accede a un Look pubblico. |
| Origine | L'origine della query in Looker, ad esempio la pagina Explore (Esplora) o SQL Runner. Se possibile, viene visualizzato anche un link al Look salvato o l'ID query insieme al nome del modello e dell'esplorazione. Alcune query non hanno informazioni aggiuntive, ad esempio quelle eseguite in SQL Runner. Le query emesse dall'interfaccia SQL aperta hanno un valore Source (Origine) di Sql_interface. |
| Runtime | Il tempo impiegato per eseguire la query. Include la creazione della query, il tempo trascorso nella coda, il transito da e verso il database e l'esecuzione della query nel database.Se la query è in esecuzione, il runtime mostra da quanto tempo è in esecuzione. Per le query eseguite in precedenza, il runtime mostra anche una stima del tempo necessario per completare l'esecuzione della query. La stima si basa sulla durata dell'ultima esecuzione della query e indica, ad esempio, "circa 2 secondi". |
| Pulsante Dettagli | Per ulteriori dettagli, consulta la sottosezione Il pulsante Dettagli in questa pagina. |
Il pulsante Dettagli
Se fai clic sul pulsante Details (Dettagli) a destra di una query, vengono visualizzate informazioni aggiuntive sulla query. Il menu Query Details (Dettagli query) include quanto segue:
- Una sezione Info (Informazioni) che include i dettagli della query (vedi la tabella seguente).
- Una sezione SQL che mostra il codice SQL non elaborato eseguito sul database. I commenti di contesto non vengono visualizzati nelle informazioni di Query Details (Dettagli query). Per impedire che i commenti influiscano sulla memorizzazione nella cache delle query, Looker aggiunge i commenti di contesto ai comandi SQL in uscita, appena prima di inviare il codice SQL al database.
- Una sezione SQL Interface query (Query dell'interfaccia SQL) che viene visualizzata quando una query è stata emessa tramite l'interfaccia SQL aperta. Questa sezione mostra la query SQL inviata a Looker dallo strumento di BI esterno e può aiutare a risolvere i problemi e a riprodurli.
- Un link Open in SQL Runner (Apri in SQL Runner) che apre la query in SQL Runner.
La sezione Info (Informazioni) include le seguenti informazioni:
| Sezione | Definizione |
|---|---|
| ID cronologia | L'ID cronologia della query, se disponibile. |
| Stato | Lo stato della query, come descritto nella tabella delle informazioni di base sulle query. |
| Messaggio | Se la query contiene una PDT, in questo campo viene visualizzato il commento di generazione della PDT. Se la query non contiene una PDT, il campo non viene visualizzato. |
| Connessione | La connessione Looker in cui è stata eseguita questa query. |
| Utente | L'utente che ha eseguito questa query, se è possibile determinarlo. Alcune query non vengono eseguite da un utente specifico, ad esempio quando Looker crea una tabella derivata permanente o quando un utente sconosciuto accede a un Look pubblico. |
| Origine | L'origine della query in Looker, ad esempio la pagina Explore (Esplora) o SQL Runner. Se possibile, vengono visualizzate informazioni aggiuntive, ad esempio un link al Look salvato, l'ID query, il nome del modello, il nome dell'esplorazione o i campi selezionati. |
| Ora di inizio | L'ora di inizio della query, visualizzata nel fuso orario dell'applicazione. |
| Ora di fine | L'ora di fine della query, visualizzata nel fuso orario dell'applicazione. |
| Runtime | Il tempo impiegato per eseguire la query. |
Interruzione delle query
Per i dialetti che supportano l'interruzione delle query, Looker può interrompere l'esecuzione delle query nei seguenti modi:
- Automaticamente: Looker interrompe automaticamente una query se l'utente chiude la scheda del browser in cui è in esecuzione la query.
- Singolarmente: gli amministratori di Looker possono interrompere una singola query in esecuzione dalla pagina Amministrazione Queries (Query) facendo clic sul pulsante Stop (Interrompi) per la query. (Gli utenti con l'autorizzazione
see_queriespermission possono visualizzare la pagina Queries (Query), ma solo gli amministratori di Looker possono interrompere una query in esecuzione.) - In blocco: gli amministratori di Looker possono interrompere contemporaneamente più query in esecuzione nell'intera istanza o per una connessione a un database specifica utilizzando la funzionalità di pulizia delle query di emergenza nella pagina Queries (Query).
Interrompere le query in blocco
Se l'istanza di Looker diventa non integra o degradata a causa dell'accumulo di query (ad esempio, le query bloccate esauriscono gli slot di query disponibili o la pagina Queries (Query) diventa lenta o non risponde), gli amministratori di Looker possono interrompere l'esecuzione delle query in blocco senza riavviare l'istanza.
Per interrompere le query in blocco:
- In Looker, vai alla pagina Queries (Query) nel menu Admin (Amministrazione).
Nella barra degli indirizzi del browser, aggiungi
?cleanup=truealla fine dell'URL e premi Invio. Ad esempio:https://INSTANCE_NAME.cloud.looker.com/admin/queries?cleanup=trueSopra la tabella delle query viene visualizzata la sezione Emergency Query Cleanup (Pulizia delle query di emergenza).
Esegui una delle seguenti azioni:
- Interrompi tutte le query in esecuzione nell'istanza: fai clic su Kill ALL Running Queries (Interrompi tutte le query in esecuzione).
- Interrompi tutte le query in esecuzione per una connessione specifica: seleziona una connessione al database dall'elenco a discesa Connection (Connessione) e fai clic su Kill Queries on Connection (Interrompi le query sulla connessione).
Nella finestra di dialogo di conferma, conferma che vuoi terminare le query in esecuzione.
Se una connessione al database non integra o non risponde causa un accumulo ripetuto di query, gli amministratori possono anche disattivare temporaneamente la connessione utilizzando l'opzione Disable Connection (Disattiva connessione) nella pagina Connections Settings (Impostazioni connessioni).
Dialetti supportati per l'interruzione delle query
Affinché Looker possa interrompere le query, sia automaticamente chiudendo la scheda del browser, singolarmente nella pagina Queries (Query) o in blocco utilizzando la pulizia delle query di emergenza, il dialetto del database deve supportare l'interruzione delle query. La tabella seguente mostra i dialetti che supportano l'interruzione delle query nell'ultima release di Looker:
| Dialetto | Supportata? |
|---|---|
| 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 |
Timeout e accodamento delle query
Looker interrompe le query che sono in coda da troppo tempo. Questa operazione è chiamata timeout. Alla query possono essere applicati diversi timeout:
Timeout del pool di connessioni e numero massimo di query simultanee: per evitare di sovraccaricare il database con query simultanee, Looker mantiene le query simultanee in eccesso nella coda di query di Looker e interrompe le query che rimangono in coda troppo a lungo. Per impostazione predefinita, sono consentite 75 query simultanee per connessione. Le query aggiuntive oltre il limite di connessione andranno in timeout dopo 0 secondi. Per modificare questi valori predefiniti, configura le impostazioni Max connections (Connessioni massime), Max concurrent queries for this connection (Numero massimo di query simultanee per questa connessione) e Connection pool timeout (Timeout del pool di connessioni) nella pagina Connections Settings (Impostazioni connessioni) di una connessione.
Limite e timeout delle query per utente: per impedire a un singolo utente di riempire la coda di query di Looker, ogni utente ha un numero massimo di query simultanee consentite e un timeout della coda corrispondente per le query in coda a causa del limite di query simultanee. Il limite per utente si applica sia agli utenti che accedono a Looker utilizzando la normale procedura di autenticazione sia agli utenti che accedono utilizzando le credenziali utente dell'API. Esistono due modi per definire il numero massimo di query simultanee per utente per le connessioni nell'istanza di Looker:
- L'opzione di avvio
per-user-query-limit. Si tratta di un'impostazione a livello di istanza che imposta il valore predefinito per le connessioni nell'istanza. L'opzione di avvioper-user-query-limitlimita il numero di query simultanee per utente, per connessione, per nodo nell'istanza di Looker. Il valore massimo predefinito di 15 query simultanee per utente si applica a ogni connessione valida e, se l'istanza di Looker è in cluster, a ogni nodo del cluster. Per impostazione predefinita, ogni utente può eseguire un massimo di 15 query simultanee per connessione, per nodo, con un timeout di 600 secondi. Ad esempio, se hai un cluster di 5 nodi con unper-user-query-limitdi 15, ogni nodo consentirà 15 query simultanee per utente per questa connessione, per un totale di 75 query su tutti i nodi (15 * 5 = 75).
Puoi modificare il limite di query per utente per una connessione utilizzando l'impostazione Max concurrent queries per user for this connection (Numero massimo di query simultanee per utente per questa connessione) nella pagina Connection Settings (Impostazioni connessione) della connessione. Se l'istanza di Looker è ospitata dal cliente, puoi modificare il numero massimo predefinito di query simultanee per utente configurando l'opzione di avvio
--per-user-query-limite puoi configurare il timeout della coda utilizzando l'opzione di avvio--per-user-query-timeoutstartup option.- L'opzione Max concurrent queries per user for this connection (Numero massimo di query simultanee per utente per questa connessione) in Connections Settings (Impostazioni connessioni) per una connessione. L'impostazione Max concurrent queries per user for this connection (Numero massimo di query simultanee per utente per questa connessione) ha un valore predefinito di 25 ed è per utente e per connessione, ma non per nodo. Ad esempio, se hai un cluster di 5 nodi e imposti questo valore su 15, ogni nodo consentirà 3 query simultanee per utente per questa connessione (15 / 5 = 3), per un totale di 15 query su tutti i nodi. Per una connessione, se viene fornito un valore per l'impostazione Max concurrent queries per user for this connection (Numero massimo di query simultanee per utente per questa connessione), il valore Max concurrent queries per user for this connection (Numero massimo di query simultanee per utente per questa connessione) sostituirà l'opzione di avvio
per-user-query-limitper la connessione.
- L'opzione di avvio
Limite e timeout delle query dello scheduler: per evitare di sovraccaricare il processo dello scheduler di Looker, un'istanza di Looker può eseguire un massimo di 10 query pianificate simultanee e il timeout per le query nella coda dello scheduler è di 1200 secondi. Se l'istanza di Looker è ospitata dal cliente, puoi modificare questi valori predefiniti configurando le
--scheduler-query-limite--scheduler-query-timeoutopzioni di avvio.Limite e timeout delle query del renderer: per evitare di sovraccaricare il processo del renderer di Looker, un'istanza di Looker può eseguire il rendering di un massimo di 2 download simultanei basati su immagini, ad esempio nei formati PDF e PNG. Se l'istanza di Looker è ospitata dal cliente, puoi modificare questo valore predefinito configurando l'opzione di avvio
--concurrent-render-jobsstartup option.
Timeout del proxy: le istanze ospitate dal cliente spesso utilizzano proxy con un timeout predefinito di 60 secondi. Ti consigliamo di aumentare questo timeout a 60 minuti. Per ulteriori informazioni, consulta il post della community di Looker Running Looker behind a proxy server or load balancer (Esecuzione di Looker dietro un server proxy o un bilanciatore del carico).
Timeout del database: la maggior parte dei database ha regole per l'accodamento e i timeout indipendenti dalle code e dai timeout di Looker. Ad esempio, una query potrebbe aver lasciato la coda di Looker, ma può comunque essere in coda nel database. Per ulteriori informazioni sulla personalizzazione dei timeout delle query del database, consulta la documentazione del tuo database.