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

STL_LOAD_ERRORS

Zeigt die Datensätze für alle Amazon-Redshift-Ladefehler an.

STL_ LOAD _ ERRORS enthält eine Historie aller Amazon Redshift Redshift-Ladefehler. Vgl. Ladefehlerreferenz für eine umfassende Liste möglicher Ladefehler und Erläuterungen dazu.

Fragen Sie nach der Abfrage STL_LOADERROR_DETAIL von STL _ LOAD _ zusätzliche Details ab, z. B. die genaue Datenzeile und -spalte, in der ein Analysefehler aufgetreten ist, ERRORS um allgemeine Informationen über den Fehler zu erhalten.

STL_ LOAD _ ERRORS 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

STL_ LOAD _ enthält ERRORS nur Abfragen, die auf Hauptclustern ausgeführt werden. Abfragen, die auf Nebenläufigkeitsskalierungs-Clustern ausgeführt werden, sind nicht enthalten. Für den Zugriff auf Abfragen, die sowohl auf Haupt- als auch auf Clustern zur Parallelitätsskalierung ausgeführt werden, empfehlen wir, die SYS Überwachungsansicht SYS_LOAD_ERROR_DETAIL zu verwenden. Die Daten in der SYS Überwachungsansicht sind so formatiert, dass sie einfacher zu verwenden und zu verstehen sind.

Tabellenspalten

Spaltenname Datentyp Beschreibung
userid integer ID des Benutzers, der den Eintrag generiert hat.
slice integer Slice, auf dem der Fehler aufgetreten ist.
tbl integer Tabellen-ID.
starttime Zeitstempel Startzeit UTC für den Ladevorgang.
Sitzung integer Sitzungs-ID der Sitzung, die den Ladevorgang durchführt.
query integer Abfrage-ID. Die Abfrage-Spalte kann verwendet werden, um andere Systemtabellen und Anzeigen anzufügen.
filename character(256) Der vollständige Pfad zur Eingabedatei für den Ladevorgang.
line_number bigint Zeilennummer in der Ladedatei mit dem Fehler. Für COPY fromJSON, die Zeilennummer der letzten Zeile des JSON Objekts mit dem Fehler.
colname character(127) Feld mit dem Fehler.
type character(10) Datentyp des Feldes.
col_length character(10) Spaltenlänge, falls anwendbar. Dieses Feld ist gefüllt, wenn für den Datentyp eine Längenbegrenzung gilt. So enthält diese Spalte beispielsweise für eine Spalte mit dem Datentyp „character(3)“ den Wert „3“.
position integer Position des Fehlers in dem Feld.
raw_line character(1024) Roh-Ladedaten, die den Fehler enthalten. Multibyte-Zeichen in den Ladedaten werden durch einen Punkt ersetzt.
raw_field_value char(1024) Der Wert des Feldes „colname“ vor dem Parsing, der zu dem Ladefehler geführt hat.
err_code integer Fehlercode.
err_reason character(100) Erläuterung zu dem Fehler.
is_partial Ganzzahl Wert, der, falls wahr (1), angibt, dass die Eingabedatei während eines COPY Vorgangs in Bereiche aufgeteilt wird. Wenn dieser Wert false (0) ist, wird die Eingabedatei nicht geteilt.
start_offset bigint Wert, der den Offsetwert der Aufteilung (in Byte) angibt, wenn die Eingabedatei während eines COPY Vorgangs aufgeteilt wird. Wenn die Zeilennummer in der Datei unbekannt ist, lautet die Zeilennummer -1. Wenn die Datei nicht geteilt wird, ist dieser Wert 0.
copy_job_id bigint Die Kennung des Kopierauftrags. 0 gibt an, dass keine Auftragskennung vorhanden ist.

Beispielabfragen

Die folgende Abfrage verknüpft STL _ LOAD _ ERRORS mit STL _ LOADERROR _DETAIL, um die Detailfehler anzuzeigen, die beim letzten Ladevorgang aufgetreten sind.

select d.query, substring(d.filename,14,20), d.line_number as line, substring(d.value,1,16) as value, substring(le.err_reason,1,48) as err_reason from stl_loaderror_detail d, stl_load_errors le where d.query = le.query and d.query = pg_last_copy_id(); query | substring | line | value | err_reason -------+-------------------+------+----------+---------------------------- 558| allusers_pipe.txt | 251 | 251 | String contains invalid or unsupported UTF8 code 558| allusers_pipe.txt | 251 | ZRU29FGR | String contains invalid or unsupported UTF8 code 558| allusers_pipe.txt | 251 | Kaitlin | String contains invalid or unsupported UTF8 code 558| allusers_pipe.txt | 251 | Walter | String contains invalid or unsupported UTF8 code

Im folgenden Beispiel wird STL _ LOAD _ ERRORS mit _ STV TBL _ verwendet, PERM um eine neue Ansicht zu erstellen. Anschließend wird anhand dieser Ansicht ermittelt, welche Fehler beim Laden von Daten in die EVENT Tabelle aufgetreten sind:

create view loadview as (select distinct tbl, trim(name) as table_name, query, starttime, trim(filename) as input, line_number, colname, err_code, trim(err_reason) as reason from stl_load_errors sl, stv_tbl_perm sp where sl.tbl = sp.id);

Als Nächstes gibt die folgende Abfrage tatsächlich den letzten Fehler zurück, der beim Laden der EVENT Tabelle aufgetreten ist:

select table_name, query, line_number, colname, starttime, trim(reason) as error from loadview where table_name ='event' order by line_number limit 1;

Die Abfrage gibt den letzten Ladefehler zurück, der für die EVENT Tabelle aufgetreten ist. Wenn keine Ladefehler aufgetreten sind, gibt die Abfrage null Zeilen aus. In diesem Beispiel gibt die Abfrage einen einzigen Fehler aus:

table_name | query | line_number | colname | error | starttime ------+-----+----+----+--------------------------------------------------------+---------------------- event | 309 | 0 | 5 | Error in Timestamp value or format [%Y-%m-%d %H:%M:%S] | 2014-04-22 15:12:44 (1 row)

In Fällen, in denen der COPY Befehl große, unkomprimierte, durch Text getrennte Dateidaten automatisch aufteilt, um Parallelität zu ermöglichen, zeigen die Spalten line_number, is_partial und start_offset Informationen zu Teilungen an. (Die Zeilennummer kann unbekannt sein, wenn die Zeilennummer aus der Originaldatei nicht verfügbar ist.)

--scan ranges information SELECT line_number, POSITION, btrim(raw_line), btrim(raw_field_value), btrim(err_reason), is_partial, start_offset FROM stl_load_errors WHERE query = pg_last_copy_id(); --result -1,51,"1008771|13463413|463414|2|28.00|38520.72|0.06|0.07|NO|1998-08-30|1998-09-25|1998-09-04|TAKE BACK RETURN|RAIL|ans cajole sly","NO","Char length exceeds DDL length",1,67108864