SVCS_QUERY_SUMMARY - 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à.

SVCS_QUERY_SUMMARY

Utilizzate la SUMMARY vista SVCS QUERY _ _ per trovare informazioni generali sull'esecuzione di un'interrogazione.

Nota che le informazioni in SVCS _ QUERY _ SUMMARY sono aggregate da tutti i nodi.

Nota

La SUMMARY vista SVCS QUERY _ _ contiene solo informazioni sulle query completate da Amazon Redshift, non altre utilità DDL e comandi. Per un elenco completo e informazioni su tutti i rendiconti compilati da Amazon Redshift, inclusi DDL i comandi di utilità, puoi eseguire una query su SVL _ STATEMENTTEXT view.

Le viste di sistema con il prefisso SVCS forniscono dettagli sulle interrogazioni sui cluster di scalabilità principale e simultanea. Le viste sono simili a quelle con il prefisso, SVL tranne per il fatto che forniscono informazioni solo per le query eseguite SVL sul cluster principale.

SVCS_ QUERY _ SUMMARY è 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 disponibili anche nella visualizzazione di SYS monitoraggioSYS_QUERY_DETAIL. I dati nella visualizzazione di SYS monitoraggio sono formattati per essere più facili da usare e comprendere. Ti consigliamo di utilizzare la visualizzazione di SYS monitoraggio per le tue domande.

Per informazioni su SVL _ QUERY _SUMMARY, vedereSVL_QUERY_SUMMARY.

Colonne di tabella

Nome colonna Tipo di dati Descrizione
userid integer ID dell'utente che ha generato la voce.
query integer ID query. Consente di unire in join varie altre tabelle e visualizzazioni di sistema.
stm integer Flusso: un insieme di segmenti simultanei in una query. Una query ha uno o più flussi.
seg integer Numero di segmento. Una query consiste in più segmenti e ogni segmento consiste in una o più fasi. I segmenti di query possono essere eseguiti in parallelo. Ogni segmento viene eseguito in un singolo processo.
step integer La fase di query eseguita.
maxtime bigint Quantità di tempo massima per l'esecuzione della fase (in microsecondi).
avgtime bigint Tempo medio per l'esecuzione della fase (in microsecondi).
righe bigint Numero di righe di dati coinvolte nella fase di query.
bytes bigint Numero di byte di dati coinvolti nella fase di query.
rate_row double precision Velocità di esecuzione di query per riga.
rate_byte double precision Velocità di esecuzione di query per byte.
etichetta text Etichetta di fase, che consiste in un nome di fase di query e, quando applicabile, in un ID di tabella e in un nome di tabella (per esempio, scan tbl=100448 name =user). Le tabelle a tre cifre si riferiscono in IDs genere alle scansioni di tabelle transitorie. Quando viene visualizzato tbl=0, in genere fa riferimento a una scansione di un valore costante.
is_diskbased character(1) Se questa fase della query è stata eseguita come operazione basata su disco su qualsiasi nodo nel cluster: true (t) o false (f). Solo determinate fasi, come hash, sort e le fasi di aggregazione, possono accedere al disco. Molti tipi di fase sono sempre eseguiti in memoria.
workmem bigint Quantità di memoria di lavoro (in byte) assegnata alla fase di query.
is_rrscan character(1) Se true (t), indica che in questa fase è stata utilizzata la scansione a intervallo limitato. Il valore predefinito è false (f).
is_delayed_scan character(1) Se true (t), indica che in questa fase è stata utilizzata la scansione ritardata. Il valore predefinito è false (f).
rows_pre_filter bigint Per le scansioni di tabelle permanenti, il numero totale di righe emesse prima di aver applicato filtri alle righe contrassegnate per l'eliminazione (righe fantasma).

Query di esempio

Visualizzazione delle informazioni di elaborazione per una fase di query

La query seguente mostra le informazioni di elaborazione di base per ogni fase della query 87:

select query, stm, seg, step, rows, bytes from svcs_query_summary where query = 87 order by query, seg, step;

Questa query recupera le informazioni di elaborazione relative alla query 87, come mostrato nel seguente output di esempio:

query | stm | seg | step | rows | bytes -------+-----+-----+------+--------+--------- 87 | 0 | 0 | 0 | 90 | 1890 87 | 0 | 0 | 2 | 90 | 360 87 | 0 | 1 | 0 | 90 | 360 87 | 0 | 1 | 2 | 90 | 1440 87 | 1 | 2 | 0 | 210494 | 4209880 87 | 1 | 2 | 3 | 89500 | 0 87 | 1 | 2 | 6 | 4 | 96 87 | 2 | 3 | 0 | 4 | 96 87 | 2 | 3 | 1 | 4 | 96 87 | 2 | 4 | 0 | 4 | 96 87 | 2 | 4 | 1 | 1 | 24 87 | 3 | 5 | 0 | 1 | 24 87 | 3 | 5 | 4 | 0 | 0 (13 rows)

Determinare se le fasi della query si sono riversate sul disco

La query seguente mostra se una delle fasi della query con l'ID query 1025 si è riversata o meno sul disco (consultare la visualizzazione SVL_QLOG per scoprire come ottenere l'ID query di una query) o se la query è stata eseguita interamente in memoria:

select query, step, rows, workmem, label, is_diskbased from svcs_query_summary where query = 1025 order by workmem desc;

Questa query restituisce il seguente output di esempio:

query| step| rows | workmem | label | is_diskbased -----+-----+--------+-----------+---------------+-------------- 1025 | 0 |16000000| 141557760 |scan tbl=9 | f 1025 | 2 |16000000| 135266304 |hash tbl=142 | t 1025 | 0 |16000000| 128974848 |scan tbl=116536| f 1025 | 2 |16000000| 122683392 |dist | f (4 rows)

Scansionando i valori di IS_DISKBASED, è possibile vedere quali passaggi di interrogazione sono stati inviati al disco. Per la query 1025, la fase di hash è stata eseguita su disco. Le fasi che possono essere eseguite su disco includono hash, aggr e le fasi di ordinamento. Per visualizzare solo i passaggi di interrogazione basati su disco, aggiungi una and is_diskbased = 't' clausola all'SQListruzione nell'esempio precedente.