SVL_COMPILE - Amazon Redshift

Amazon Redshift unterstützt ab dem 1. November 2025 nicht mehr die Erstellung neuer Python-UDFs. Wenn Sie Python-UDFs verwenden möchten, erstellen Sie die UDFs vor diesem Datum. Bestehende Python-UDFs funktionieren weiterhin wie gewohnt. Weitere Informationen finden Sie im Blog-Posting.

SVL_COMPILE

Zeichnet Kompilationszeit und Ort für jedes Abfragesegment auf.

SVL_COMPILE 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.

Anmerkung

SVL_COMPILE enthält nur Abfragen, die auf bereitgestellten Haupt-Clustern ausgeführt werden. Abfragen, die auf Parallelitätsskalierungs-Clustern oder in Serverless-Namespaces ausgeführt werden, sind nicht enthalten. Um auf Erklärpläne zuzugreifen, die sowohl auf Haupt-Clustern als auch auf Parallelitätsskalierungs-Clustern und in Serverless-Namespaces ausgeführt werden, empfehlen wir, die SYS-Überwachungsansicht SYS_QUERY_HISTORY zu verwenden. Die Daten in der SYS-Überwachungsansicht sind so formatiert, dass sie leichter verwendbar und besser verständlich sind.

Weitere Informationen zu SVCS_COMPILE finden Sie unter SVCS_COMPILE.

Tabellenspalten

Spaltenname Datentyp Beschreibung
userid integer ID des Benutzers, der den Eintrag generiert hat.
xid bigint Mit der Anweisung verbundene Transaktions-ID.
pid integer Die mit der Anweisung verbundene Prozess-ID.
query integer Abfrage-ID. Kann verwendet werden, um verschiedene andere Systemtabellen und Anzeigen anzufügen.
segment integer Das zu kompilierende Abfragesegment.
locus integer Ort, an dem das Segment ausgeführt wird: 1, wenn auf einem Datenverarbeitungsknoten, und 2, wenn auf dem Führungsknoten.
starttime timestamp Zeitpunkt des Beginns der Kompilierung, nach UTC.
endtime timestamp Zeitpunkt des Endes der Kompilierung, nach UTC.
compile integer 0, wenn die Kompilierung wiederverwendet wurde, 1, wenn das Segment kompiliert wurde.

Beispielabfragen

In diesem Beispiel führten die Abfragen 35878 und 35879 die gleiche SQL-Anweisung aus. Die Kompilierungsspalte für Abfrage 35878 zeigt 1 für vier Abfragesegmente; dies zeigt an, dass die Segmente kompiliert wurden. Abfrage 35879 zeigt 0 in der Kompilierungsspalte für jedes Segment; dies zeigt an, dass die Segmente nicht erneut kompiliert werden müssen.

select userid, xid, pid, query, segment, locus, datediff(ms, starttime, endtime) as duration, compile from svl_compile where query = 35878 or query = 35879 order by query, segment; userid | xid | pid | query | segment | locus | duration | compile --------+--------+-------+-------+---------+-------+----------+--------- 100 | 112780 | 23028 | 35878 | 0 | 1 | 0 | 0 100 | 112780 | 23028 | 35878 | 1 | 1 | 0 | 0 100 | 112780 | 23028 | 35878 | 2 | 1 | 0 | 0 100 | 112780 | 23028 | 35878 | 3 | 1 | 0 | 0 100 | 112780 | 23028 | 35878 | 4 | 1 | 0 | 0 100 | 112780 | 23028 | 35878 | 5 | 1 | 0 | 0 100 | 112780 | 23028 | 35878 | 6 | 1 | 1380 | 1 100 | 112780 | 23028 | 35878 | 7 | 1 | 1085 | 1 100 | 112780 | 23028 | 35878 | 8 | 1 | 1197 | 1 100 | 112780 | 23028 | 35878 | 9 | 2 | 905 | 1 100 | 112782 | 23028 | 35879 | 0 | 1 | 0 | 0 100 | 112782 | 23028 | 35879 | 1 | 1 | 0 | 0 100 | 112782 | 23028 | 35879 | 2 | 1 | 0 | 0 100 | 112782 | 23028 | 35879 | 3 | 1 | 0 | 0 100 | 112782 | 23028 | 35879 | 4 | 1 | 0 | 0 100 | 112782 | 23028 | 35879 | 5 | 1 | 0 | 0 100 | 112782 | 23028 | 35879 | 6 | 1 | 0 | 0 100 | 112782 | 23028 | 35879 | 7 | 1 | 0 | 0 100 | 112782 | 23028 | 35879 | 8 | 1 | 0 | 0 100 | 112782 | 23028 | 35879 | 9 | 2 | 0 | 0 (20 rows)