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 einen Verlauf aller Amazon-Redshift-Ladefehler. Vgl. Ladefehlerreferenz für eine umfassende Liste möglicher Ladefehler und Erläuterungen dazu.

Fragen Sie STL_LOADERROR_DETAIL ab, um weitere Details zu erhalten, z. B. die genaue Datenzeile und Spalte, in der ein Parsingfehler aufgetreten ist, nachdem Sie STL_LOAD_ERRORS abgefragt haben, um allgemeine Informationen zum 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_ERRORS enthält nur Abfragen, die auf Haupt-Clustern ausgeführt werden. Abfragen, die auf Nebenläufigkeitsskalierungs-Clustern ausgeführt werden, sind nicht enthalten. Um auf Abfragen zuzugreifen, die sowohl auf Haupt-Clustern als auch auf Nebenläufigkeitsskalierungs-Clustern 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 leichter verwendbar und besser verständlich 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 timestamp Anfangszeit nach UTC des Ladevorgangs.
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 von JSON ist dies die Nummer 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 integer Wert, der bei true (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 Wenn die Eingabedatei während eines COPY-Vorgangs geteilt wird, gibt dieser Wert den Offset-Wert der Teilung (in Byte) an. 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 verbindet STL_LOAD_ERRORS mit STL_LOADERROR_DETAIL zur Anzeige der Details der Fehler, die während des letzten Ladevorgangs 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

Das folgende Beispiel verwendet STL_LOAD_ERRORS mit STV_TBL_PERM zur Erstellung einer neuen Ansicht und nutzt diese dann, um festzustellen, welche Fehler beim Laden der Daten in die Tabelle EVENT 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);

Anschließend gibt die folgende Abfrage den letzten Fehler aus, der beim Laden der Tabelle EVENT 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 Fehler aus, der in der Tabelle EVENT 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 Aufteilungen. (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