STL_WLM_QUERY - Amazon Redshift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

STL_WLM_QUERY

Contiene un record per ogni tentativo di esecuzione di una query in una classe di servizio gestita da WLM.

STL_WINDOW è visibile a tutti gli utenti. Gli utenti con privilegi avanzati visualizzano tutte le righe; gli utenti regolari visualizzano solo i propri dati. Per ulteriori informazioni, consulta Visibilità dei dati nelle tabelle e nelle viste di sistema.

Alcuni o tutti i dati di questa tabella sono definiti anche nella vista di monitoraggio SYS SYS_QUERY_HISTORY. I dati nella vista di monitoraggio SYS sono formattati in modo da essere più facili da usare e comprendere. Ti consigliamo di utilizzare la vista di monitoraggio SYS per le query.

Colonne di tabella

Nome colonna Tipo di dati Descrizione
userid integer ID dell'utente che ha generato la voce.
xid integer ID di transazione della query o della subquery.
task integer ID utilizzato per tenere traccia di una query via il gestore del carico di lavoro. Può essere associato a più interrogazioni. IDs Se una query viene riavviata, alla stessa viene assegnato un nuovo ID di query ma non un nuovo ID di attività.
query integer ID query. Se una query viene riavviata, alla stessa viene assegnato un nuovo ID di query ma non un nuovo ID di attività.
service_class integer ID per la classe di servizio. Per un elenco delle classi di servizio IDs, vedereClasse di servizio WLM IDs.
slot_count integer Numero di slot di query WLM utilizzati da una query in base al livello di simultaneità impostato per la coda. Il valore predefinito è 1. Per ulteriori informazioni, consulta wlm_query_slot_count.
service_class_start_time timestamp Ora in cui la query è stata assegnata alla classe di servizio. Questo orario è nel fuso orario UTC.
queue_start_time timestamp Ora in cui la query è stata inserita nella coda per la classe di servizio. Questo orario è nel fuso orario UTC.
queue_end_time timestamp Ora in cui la query ha lasciato la coda per la classe di servizio. Questo orario è nel fuso orario UTC.
total_queue_time bigint Numero totale di microsecondi che la query ha trascorso nella coda
exec_start_time timestamp Ora in cui la query ha iniziato l'esecuzione nella classe di servizio. Questo orario è nel fuso orario UTC.
exec_end_time timestamp Ora in cui la query ha completato l'esecuzione nella classe di servizio. Questo orario è nel fuso orario UTC.
total_exec_time bigint Numero di microsecondi che la query ha impiegato per l'esecuzione.
service_class_end_time timestamp Ora in cui la query ha lasciato la classe di servizio. Questo orario è nel fuso orario UTC.
final_state character(16) Riservato per il sistema.
est_peak_mem bigint Riservato per il sistema.
query_priority char(20) La priorità della query. I valori possibili sono n/a, lowest, low, normal, high e highest, dove n/a indica che la priorità della query non è supportata.
service_class_name character(64) Il nome della classe di servizio. Per ulteriori informazioni sulle classi di servizio, consulta Tabelle e viste di sistema di WLM.

Query di esempio

Visualizzazione del tempo medio delle query in coda e in esecuzione

Le seguenti query mostrano la configurazione corrente per le classi di servizio maggiori di 4. Per un elenco delle classi di servizio IDs, vedereClasse di servizio WLM IDs.

La seguente query restituisce il tempo medio (in microsecondi) che ogni query ha trascorso nelle code e in esecuzione per ogni classe di servizio.

select service_class as svc_class, count(*), avg(datediff(microseconds, queue_start_time, queue_end_time)) as avg_queue_time, avg(datediff(microseconds, exec_start_time, exec_end_time )) as avg_exec_time from stl_wlm_query where service_class > 4 group by service_class order by service_class;

Questa query restituisce il seguente output di esempio:

svc_class | count | avg_queue_time | avg_exec_time -----------+-------+----------------+--------------- 5 | 20103 | 0 | 80415 5 | 3421 | 34015 | 234015 6 | 42 | 0 | 944266 7 | 196 | 6439 | 1364399 (4 rows)

Visualizzazione del tempo massimo delle query in coda e in esecuzione

La seguente query restituisce la quantità massima di tempo (in microsecondi) che una query ha trascorso in ogni coda di query e in esecuzione per ogni classe di servizio.

select service_class as svc_class, count(*), max(datediff(microseconds, queue_start_time, queue_end_time)) as max_queue_time, max(datediff(microseconds, exec_start_time, exec_end_time )) as max_exec_time from stl_wlm_query where svc_class > 5 group by service_class order by service_class;
svc_class | count | max_queue_time | max_exec_time -----------+-------+----------------+--------------- 6 | 42 | 0 | 3775896 7 | 197 | 37947 | 16379473 (4 rows)