STV_RECENTS - Amazon Redshift

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

STV_RECENTS

Verwenden Sie die RECENTS Tabelle STV _, um Informationen über die aktuell aktiven und kürzlich ausgeführten Abfragen in einer Datenbank abzurufen.

STV_ RECENTS ist für alle Benutzer sichtbar. Superuser können alle Zeilen sehen; reguläre Benutzer können nur ihre eigenen Daten sehen. Weitere Informationen finden Sie unter Sichtbarkeit der Daten in Systemtabellen und Ansichten.

Einige oder alle Daten in dieser Tabelle befinden sich auch in der SYS ÜberwachungsansichtSYS_QUERY_HISTORY. Die Daten in der SYS Überwachungsansicht sind so formatiert, dass sie einfacher zu verwenden und zu verstehen sind. Wir empfehlen Ihnen, die SYS Überwachungsansicht für Ihre Abfragen zu verwenden.

Problembehandlung mit STV _ RECENTS

STV_ RECENTS ist besonders hilfreich, um festzustellen, ob eine Abfrage oder eine Sammlung von Abfragen gerade ausgeführt oder abgeschlossen ist. Dabei wird auch die Dauer angezeigt, wie lange eine Abfrage ausgeführt wurde. Dies ist hilfreich, um ein Gefühl dafür zu bekommen, welche Abfragen lange andauern.

Sie können STV _ RECENTS mit anderen Systemansichten verknüpfenSTV_INFLIGHT, um beispielsweise zusätzliche Metadaten über laufende Abfragen zu sammeln. (Im Abschnitt mit den Beispielabfragen finden Sie ein Beispiel, das die Vorgehensweise zeigt.) Sie können auch zurückgegebene Datensätze aus dieser Ansicht zusammen mit den Überwachungsfunktionen in der Amazon-Redshift-Konsole für die Fehlerbehebung in Echtzeit verwenden.

Systemansichten, die STV _ RECENTS include ergänzenSTL_QUERYTEXT, das den Abfragetext für SQL Befehle abruftSVV_QUERY_INFLIGHT, und das STV _ mit _ INFLIGHT verbindet. STL QUERYTEXT

Tabellenspalten

Spaltenname Datentyp Beschreibung
userid integer ID des Benutzers, der den Eintrag generiert hat.
status character(20) Abfragestatus. Gültige Werte sind Running, Done.
starttime timestamp Der Zeitpunkt des Beginns der Abfrage.
duration integer Anzahl der Mikrosekunden seit dem Beginn der Sitzung.
user_name character(50) Name des Benutzers, der den Prozess ausgeführt hat.
db_name character(50) Name der Datenbank.
query character(600) Abfragetext, bis zu 600 Zeichen. Darüber hinaus gehende Zeichen werden abgeschnitten.
pid integer Prozess-ID für die zu der Abfrage gehörende Sitzung; diese ist immer -1 für abgeschlossene Abfragen.

Beispielabfragen

Um festzustellen, welche Abfragen derzeit für die Datenbank ausgeführt werden, geben Sie die folgende Abfrage ein:

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

Die folgende Beispielausgabe zeigt eine einzelne Abfrage, die in der TICKIT Datenbank ausgeführt wird:

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

Das folgende Beispiel gibt eine Liste von Abfragen (falls vorhanden) zurück, die derzeit ausgeführt werden oder in einer Warteschlange auf ihre Ausführung warten:

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

Diese Abfrage gibt nur Ergebnisse zurück, wenn Sie eine Reihe gleichzeitiger Abfragen ausführen und sich einige davon in einer Warteschlange befinden.

Das folgende Beispiel ist eine Erweiterung des vorherigen Beispiels. In diesem Fall werden tatsächlich ausgeführte (nicht wartende) Abfragen aus dem Ergebnis ausgeschlossen:

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

Weitere Tipps zur Fehlerbehebung bei der Abfrageleistung finden Sie unter Problembehandlung bei Abfragen.