Neptune-Loader-Get-Status-Antworten - Amazon Neptune

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.

Neptune-Loader-Get-Status-Antworten

Die folgende Beispielantwort von Neptune Get-Status API beschreibt die Gesamtstruktur der Antwort, erklärt die verschiedenen Felder und ihre Datentypen sowie die Fehlerbehandlung und die Fehlerprotokolldetails.

Layout „Get-Status-Antwort“ von Neptune Loader JSON

Das allgemeine Layout einer Loader-Status-Antwort sieht wie folgt aus:

{ "status" : "200 OK", "payload" : { "feedCount" : [ { "LOAD_FAILED" : number } ], "overallStatus" : { "fullUri" : "s3://bucket/key", "runNumber" : number, "retryNumber" : number, "status" : "string", "totalTimeSpent" : number, "startTime" : number, "totalRecords" : number, "totalDuplicates" : number, "parsingErrors" : number, "datatypeMismatchErrors" : number, "insertErrors" : number, }, "failedFeeds" : [ { "fullUri" : "s3://bucket/key", "runNumber" : number, "retryNumber" : number, "status" : "string", "totalTimeSpent" : number, "startTime" : number, "totalRecords" : number, "totalDuplicates" : number, "parsingErrors" : number, "datatypeMismatchErrors" : number, "insertErrors" : number, } ], "errors" : { "startIndex" : number, "endIndex" : number, "loadId" : "string, "errorLogs" : [ ] } } }

Neptune-Loader-Get-Status overallStatus und failedFeeds-Antwortobjekte

Die möglichen Antworten, die für jeden fehlgeschlagenen Feed zurückgegeben werden, einschließlich Fehlerbeschreibungen, sind die gleichen wie für das Objekt overallStatus in einer Get-Status-Antwort.

Die folgenden Felder werden im Objekt overallStatus für alle Ladevorgänge und im Objekt failedFeeds für jeden fehlgeschlagenen Feed angegeben:

  • fullUri— Die URI der Datei oder Dateien, die geladen werden sollen.

    Typ: Zeichenfolge

    Format: s3://bucket/key.

  • runNumber   –   Die Zahl der Ausführungen dieses Ladevorgangs oder Feeds. Diese wird um eins erhöht, wenn der Ladevorgang neu gestartet wird.

    Typ: unsigned long.

  • retryNumber   –   Die Zahl der Wiederholungen dieses Ladevorgangs oder Feeds. Diese wird um eins erhöht, wenn der Loader einen Feed oder Ladevorgang automatisch wiederholt.

    Typ: unsigned long.

  • status   –   Der zurückgegebene Status des Ladevorgangs oder Feeds. LOAD_COMPLETED gibt einen erfolgreichen Ladevorgang ohne Probleme an. Eine Liste weiterer Ladestatusmeldungen finden Sie unter Neptune Loader-Fehler- und Feed-Nachrichten.

    Typ: Zeichenfolge.

  • totalTimeSpent   –   Die Zeit in Sekunden, die für das Analysieren und Einfügen von Daten für den Ladevorgang oder Feed verbraucht wurde. Dabei wird nicht die Zeit für das Abrufen der Liste der Quelldateien berücksichtigt.

    Typ: unsigned long.

  • totalRecords   –   Die Gesamtzahl der Datensätze, die geladen wurden oder deren Laden versucht wurde.

    Typ: unsigned long.

    Beachten Sie, dass sich die Anzahl der Datensätze beim Laden aus einer CSV Datei nicht auf die Anzahl der geladenen Zeilen bezieht, sondern auf die Anzahl der einzelnen Datensätze in diesen Zeilen. Nehmen wir zum Beispiel eine winzige CSV Datei wie diese:

    ~id,~label,name,team 'P-1','Player','Stokes','England'

    Neptune würde annehmen, dass diese Datei 3 Datensätze enthält:

    P-1 label Player P-1 name Stokes P-1 team England
  • totalDuplicates   –   Die Anzahl der gefundenen duplizierten Datensätze.

    Typ: unsigned long.

    Wie bei der totalRecords Zählung enthält dieser Wert die Anzahl der einzelnen doppelten Datensätze in einer CSV Datei, nicht die Anzahl der doppelten Zeilen. Nehmen wir zum Beispiel diese kleine CSV Datei:

    ~id,~label,name,team P-2,Player,Kohli,India P-2,Player,Kohli,India

    Der nach dem Laden zurückgegebene Status würde wie folgt aussehen und insgesamt 6 Datensätze melden, von denen 3 Duplikate sind:

    { "status": "200 OK", "payload": { "feedCount": [ { "LOAD_COMPLETED": 1 } ], "overallStatus": { "fullUri": "(the URI of the CSV file)", "runNumber": 1, "retryNumber": 0, "status": "LOAD_COMPLETED", "totalTimeSpent": 3, "startTime": 1662131463, "totalRecords": 6, "totalDuplicates": 3, "parsingErrors": 0, "datatypeMismatchErrors": 0, "insertErrors": 0 } } }

    Bei openCypher Ladungen wird ein Duplikat gezählt, wenn:

    • Der Loader erkennt, dass eine Zeile in einer Knotendatei eine ID ohne ID-Bereich hat, die mit einem anderen ID-Wert ohne ID-Bereich identisch ist, entweder in einer anderen Zeile oder als Teil eines vorhandenen Knotens.

    • Der Loader erkennt, dass eine Zeile in einer Knotendatei eine ID mit ID-Bereich hat, die mit einem anderen ID-Wert mit ID-Bereich identisch ist, entweder in einer anderen Zeile oder als Teil eines vorhandenen Knotens.

    Siehe Besondere Überlegungen beim Laden von Daten openCypher .

  • parsingErrors   –   Die Anzahl der aufgetretenen Analysefehler.

    Typ: unsigned long.

  • datatypeMismatchErrors   –   Die Anzahl der Datensätze mit einem Datentyp, der nicht mit den angegebenen Daten übereinstimmt.

    Typ: unsigned long.

  • insertErrors   –   Die Anzahl der Datensätze, die aufgrund von Fehlern nicht eingefügt werden konnten.

    Typ: unsigned long.

Neptune-Loader-Get-Status-Antwortobjekt errors

Fehler lassen sich in die folgenden Kategorien einteilen:

  • Error 400— Ein ungültiger loadId Wert gibt einen Fehler bei der HTTP 400 fehlerhaften Anfrage zurück. Die Nachricht beschreibt den Fehler.

  • Error 500— Eine gültige Anfrage, die nicht verarbeitet werden kann, gibt einen HTTP 500 internen Serverfehler zurück. Die Nachricht beschreibt den Fehler.

Die Liste der Fehler- und Feed-Meldungen, die der Loader im Fehlerfall zurückgibt, finden Sie unter Neptune Loader-Fehler- und Feed-Nachrichten.

Wenn ein Fehler auftritt, wird in BODY der Antwort ein JSON errors Objekt mit den folgenden Feldern zurückgegeben:

  • startIndex   –   Der Index des ersten enthaltenen Fehlers.

    Typ: unsigned long.

  • endIndex   –   Der Index des letzten enthaltenen Fehlers.

    Typ: unsigned long.

  • loadId   –   Die ID des Ladeauftrags. Sie können diese ID verwenden, um die Fehler für den Ladevorgang zu drucken, indem Sie den errors-Parameter auf TRUE festlegen.

    Typ: Zeichenfolge.

  • errorLogs   –   Eine Liste der Fehler.

    Typ: Liste.

Neptune-Loader-Get-Status-Antwortobjekt errorLogs

Das Objekt errorLogs unter errors der Get-Status-Antwort des Loaders enthält ein Objekt, das jeden Fehler anhand der folgenden Felder beschreibt:

  • errorCode   –   Identifiziert die Art des Fehlers.

    Dabei kann es sich um einen der folgenden Werte handeln:

    • PARSING_ERROR

    • S3_ACCESS_DENIED_ERROR

    • FROM_OR_TO_VERTEX_ARE_MISSING

    • ID_ASSIGNED_TO_MULTIPLE_EDGES

    • SINGLE_CARDINALITY_VIOLATION

    • FILE_MODIFICATION_OR_DELETION_ERROR

    • OUT_OF_MEMORY_ERROR

    • INTERNAL_ERROR (wird zurückgegeben, wenn der Massen-Loader die Art des Fehlers nicht bestimmen kann).

  • errorMessage   –   Eine Meldung mit einer Beschreibung des Fehlers.

    Dabei kann es sich um eine generische Meldung handeln, die mit dem Fehlercode verknüpft ist, oder um eine spezifische Meldung mit Details, z. B. zu einem fehlenden Ausgangs-/Zieleckpunkt oder zu einem Analysefehler.

  • fileName   –   Der Name des Feeds.

  • recordNum   –   Bei einem Analysefehler ist dies die Nummer des Datensatzes in der Datensatzdatei, der nicht analysiert werden konnte. Sie ist auf Null festgelegt, wenn die Datensatznummer nicht auf den Fehler zutrifft oder wenn sie nicht bestimmt werden konnte.

Beispielsweise würde der Bulk-Loader einen Parsing-Fehler generieren, wenn er in einer RDF nquads Datei auf eine fehlerhafte Zeile wie die folgende stoßen würde:

<http://base#subject> |http://base#predicate> <http://base#true> .

Wie Sie sehen können, sollte dem zweiten http in der Zeile oben eher ein  <  als ein  |  vorangestellt werden. Das resultierende Fehlerobjekt unter errorLogs in einer Statusantwort würde wie folgt aussehen:

{ "errorCode" : "PARSING_ERROR", "errorMessage" : "Expected '<', found: |", "fileName" : "s3://bucket/key", "recordNum" : 12345 },