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

STV_RECENTS

Utilizza la RECENTS tabella STV _ per trovare informazioni sulle query attualmente attive e eseguite di recente su un database.

STV_ RECENTS è 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_HISTORY. 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.

Risoluzione dei problemi con _ STV RECENTS

STV_ RECENTS è particolarmente utile per determinare se una query o una raccolta di query è attualmente in esecuzione o completata. Mostra anche la durata dell'esecuzione di una query. Questo è utile per avere un'idea delle query che richiedono più tempo.

È possibile unire STV _ RECENTS ad altre viste di sistema, ad esempio STV_INFLIGHT per raccogliere metadati aggiuntivi sull'esecuzione delle query. C'è un esempio che mostra come eseguire questa operazione nella sezione delle interrogazioni di esempio. Puoi anche utilizzare i record restituiti da questa visualizzazione insieme alle funzionalità di monitoraggio della console Amazon Redshift per la risoluzione dei problemi in tempo reale.

Visualizzazioni di sistema complementari a STV _ RECENTS includonoSTL_QUERYTEXT, che recuperano il testo della query per SQL i comandi e SVV_QUERY_INFLIGHT che unisce STV _ a _. INFLIGHT STL QUERYTEXT

Colonne di tabella

Nome colonna Tipo di dati Descrizione
userid integer ID dell'utente che ha generato la voce.
status character(20) Stato della query. I valori validi sono Running, Done.
starttime timestamp Ora in cui è stata avviata la query.
durata integer Numero di microsecondi dall'avvio della sessione.
user_name character(50) Nome dell'utente che ha eseguito il processo.
db_name character(50) Nome del database.
query character(600) Testo della query, fino a 600 caratteri. Tutti i caratteri supplementari sono troncati.
pid integer ID di processo per la sessione associata alla query, che è sempre -1 per le query completate.

Query di esempio

Per determinare quali query sono attualmente in esecuzione nel database, esegui la seguente query:

select user_name, db_name, pid, query from stv_recents where status = 'Running';

L'output di esempio riportato di seguito mostra una singola query in esecuzione sul database: TICKIT

user_name | db_name | pid | query ----------+---------+---------+------------- dwuser | tickit | 19996 |select venuename, venueseats from venue where venueseats > 50000 order by venueseats desc;

L'esempio seguente restituisce un elenco di query (se esistenti) in esecuzione o nella coda in attesa di essere eseguite:

select * from stv_recents where status<>'Done'; status | starttime | duration |user_name|db_name| query | pid -------+---------------------+----------+---------+-------+-----------+------ Running| 2010-04-21 16:11... | 281566454| dwuser |tickit | select ...| 23347

Questa query non restituisce risultati a meno che non stai eseguendo un certo numero di query simultanee e alcune di queste sono in coda.

L'esempio seguente amplia quello precedente. In questo caso, le query che sono realmente in esecuzione e non in attesa sono escluse dal risultato:

select * from stv_recents where status<>'Done' and pid not in (select pid from stv_inflight); ...

Per ulteriori suggerimenti sulla risoluzione dei problemi relativi alle prestazioni delle query, vedere Risoluzione dei problemi delle query.