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)