Fehlerbehandlung - Entwicklerhandbuch für Amazon Kinesis Data Analytics for SQL Applications

Für neue Projekte empfehlen wir, den neuen Managed Service für Apache Flink Studio anstelle von Kinesis Data Analytics for SQL Applications zu verwenden. Der Managed Service für Apache Flink Studio kombiniert Benutzerfreundlichkeit mit fortschrittlichen Analysefunktionen, sodass Sie in wenigen Minuten anspruchsvolle Anwendungen zur Stream-Verarbeitung erstellen können.

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.

Fehlerbehandlung

Amazon Kinesis Data Analytics gibt API- oder SQL-Fehler direkt an Sie zurück. Weitere Informationen über API-Operationen finden Sie im Abschnitt Aktionen. Weitere Informationen zur Behandlung von SQL-Fehlern finden Sie in der Amazon Kinesis Data Analytics -SQL-Referenz.

Amazon Kinesis Data Analytics meldet Laufzeitfehler über einen In-Application-Stream mit dem Namen error_stream.

Melden von Fehlern über einen In-Application-Stream

Amazon Kinesis Data Analytics meldet Laufzeitfehler an den In-Application-Stream mit dem Namen error_stream. Im Folgenden finden Sie Beispiele für Fehler, die auftreten könnten:

  • Ein aus der Streaming-Quelle gelesener Datensatz entspricht nicht dem Eingabeschema.

  • Ihr Anwendungscode legt eine Division durch Null fest.

  • Die Zeilen werden nicht in der richtigen Reihenfolge angezeigt (z. B. wird im Stream ein Datensatz mit einem durch einen Benutzer geänderten ROWTIME-Wert angezeigt, der bewirkt, dass ein Datensatz nicht in der richtigen Reihenfolge angezeigt wird).

  • Die Daten im Quell-Stream können nicht in den im Schema festgelegten Datentyp umgewandelt werden (Erzwingungsfehler). Informationen darüber, welche Datentypen konvertiert werden können, finden Sie unter Zuweisung von JSON-Datentypen zu SQL-Datentypen.

Wir empfehlen, diese Fehler entweder programmgesteuert in Ihrem SQL-Code zu behandeln oder die Daten im Fehler-Stream dauerhaft an einem externen Ziel zu speichern. In diesem Fall müssen Sie Ihrer Anwendung Ausgabekonfiguration hinzufügen (siehe Konfigurieren der Anwendungsausgabe). Ein Beispiel für die Funktionsweise des In-Application-Streams finden Sie unter Beispiel: Erkunden des In-Application-Fehler-Streams.

Anmerkung

Ihre Kinesis Data Analytics-Datenanalyseanwendung kann nicht programmgesteuert auf den Fehler-Stream zugreifen oder ihn ändern, da der Fehler-Stream über das Systemkonto erstellt wurde. Sie müssen anhand der Fehlerausgabe bestimmen, welche Fehler in Ihrer Anwendung auftreten können. Anschließend schreiben Sie den SQL-Code Ihrer Anwendung so, dass erwartete Fehlerbedingungen verarbeitet werden.

Fehler-Stream-Schema

Der Fehler-Stream weist das folgende Schema auf:

Feld

Datentyp

Hinweise

ERROR_TIME

TIMESTAMP

Der Zeitpunkt, an dem der Fehler auftrat

ERROR_LEVEL

VARCHAR(10)

ERROR_NAME

VARCHAR (32)

MESSAGE

VARCHAR (4096)

DATA_ROWTIME

TIMESTAMP

Die Zeilenzeit des eingehenden Datensatzes

DATA_ROW

VARCHAR (49152)

Die in Hexadezimalzeichen kodierten Daten in der ursprünglichen Zeile. Sie können diesen Hexwert mithilfe von Standardbibliotheken dekodieren oder dazu Webressourcen wie diesen Hex-in-Zeichenfolgen-Konverter verwenden.

PUMP_NAME

VARCHAR (128)

Die ursprüngliche Pumpe, wie mit CREATE PUMP definiert.