Risposte Get-Status dello strumento di caricamento Neptune - Amazon Neptune

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Risposte Get-Status dello strumento di caricamento Neptune

Il seguente esempio di risposta tratto da Neptune API Get-Status descrive la struttura generale della risposta, spiega i vari campi e i relativi tipi di dati, nonché la gestione degli errori e i dettagli del registro degli errori.

Layout della risposta Get-Status di Neptune Loader JSON

Il layout generale di una risposta dello stato dello strumento di caricamento è il seguente:

{ "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" : [ ] } } }

Oggetti di risposta Get-Status overallStatus e failedFeeds dello strumento di caricamento Neptune

Le possibili risposte restituite per ogni feed non riuscito, incluse le descrizioni degli errori, sono le stesse dell'oggetto overallStatus in una risposta Get-Status.

I seguenti campi vengono visualizzati nell'oggetto overallStatus per tutti i caricamenti e nell'oggetto failedFeeds per ogni feed non riuscito.

  • fullUri— Il URI file o i file da caricare.

    Tipo: string

    Formato: s3://bucket/key.

  • runNumber: numero di esecuzione di questo caricamento o feed. Aumenta quando il carico viene riavviato.

    Tipo: unsigned long

  • retryNumber: numero di nuovi tentativi di questo caricamento o feed. Aumenta quando lo strumento di caricamento prova nuovamente a eseguire un feed o un caricamento automaticamente.

    Tipo: unsigned long

  • status: stato restituito del caricamento o del feed. LOAD_COMPLETED indica un caricamento riuscito senza problemi. Per un elenco di altri messaggi sullo stato del caricamento, vedi Messaggi di feed e di errore dello strumento di caricamento Neptune.

    Tipo: stringa.

  • totalTimeSpent: tempo, in secondi, impiegato per analizzare e inserire i dati per il caricamento o il feed. Non è incluso il tempo impiegato per recuperare l'elenco dei file di origine.

    Tipo: unsigned long

  • totalRecords: totale dei record caricati o che si è provato a caricare.

    Tipo: unsigned long

    Si noti che durante il caricamento da un CSV file, il conteggio dei record non si riferisce al numero di righe caricate, ma piuttosto al numero di singoli record in tali righe. Ad esempio, prendiamo un CSV file minuscolo come questo:

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

    Neptune considererà questo file come contenente 3 record, ovvero:

    P-1 label Player P-1 name Stokes P-1 team England
  • totalDuplicates: numero di record duplicati rilevati.

    Tipo: unsigned long

    Come nel caso del totalRecords conteggio, questo valore contiene il numero di singoli record duplicati in un CSV file, non il numero di righe duplicate. Prendiamo questo piccolo CSV file, ad esempio:

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

    Lo stato restituito dopo il caricamento sarà simile al seguente, con un totale di 6 record, di cui 3 duplicati:

    { "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 } } }

    Per openCypher i carichi, un duplicato viene conteggiato quando:

    • Lo strumento di caricamento rileva che una riga in un file dei nodi ha un ID senza uno spazio ID uguale a un altro valore ID senza uno spazio ID, in un'altra riga o appartenente a un nodo esistente.

    • Lo strumento di caricamento rileva che una riga in un file dei nodi ha un ID con uno spazio ID uguale a un altro valore ID con uno spazio ID, in un'altra riga o appartenente a un nodo esistente.

    Per informazioni, consulta Considerazioni speciali per il caricamento dei dati openCypher .

  • parsingErrors: numero di errori di analisi rilevati.

    Tipo: unsigned long

  • datatypeMismatchErrors: numero di record il cui tipo di dati non corrisponde ai dati specificati.

    Tipo: unsigned long

  • insertErrors: numero di record che non è stato possibile inserire a causa di errori.

    Tipo: unsigned long

Oggetto di risposta Get-Status errors dello strumento di caricamento Neptune

Gli errori rientrano nelle seguenti categorie:

  • Error 400— Un errore non valido loadId restituisce un errore di richiesta HTTP 400 errato. Il messaggio descrive l'errore.

  • Error 500— Una richiesta valida che non può essere elaborata restituisce un errore HTTP 500 interno del server. Il messaggio descrive l'errore.

Vedi Messaggi di feed e di errore dello strumento di caricamento Neptune per un elenco dei messaggi di errore e di feed restituiti dallo strumento di caricamento in caso di errori.

Quando si verifica un errore, viene restituito un JSON errors oggetto nella BODY risposta, con i seguenti campi:

  • startIndex: indice del primo errore incluso.

    Tipo: unsigned long

  • endIndex: indice dell'ultimo errore incluso.

    Tipo: unsigned long

  • loadId: ID del caricamento. È possibile usare questo ID per stampare gli errori per il caricamento impostando il parametro errors su TRUE.

    Tipo: stringa.

  • errorLogs: elenco degli errori.

    Type: elenco

Oggetto di risposta Get-Status errorLogs dello strumento di caricamento Neptune

L'oggetto errorLogs contenuto nell'oggetto errors della risposta Get-Status dello strumento di caricamento contiene un oggetto che descrive ogni errore utilizzando i seguenti campi:

  • errorCode: identifica la natura dell'errore.

    Può accettare uno dei seguenti valori:

    • 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 (restituito quando lo strumento di caricamento in blocco non è in grado di determinare il tipo di errore).

  • errorMessage: messaggio che descrive l'errore.

    Può trattarsi di un messaggio generico associato al codice di errore o di un messaggio specifico contenente dettagli, ad esempio su un vertice da/a mancante o su un errore di analisi.

  • fileName: nome del feed.

  • recordNum: in caso di errore di analisi, questo è il numero di record nel file del record che non è stato possibile analizzare. Viene impostato su zero se il numero di record non è applicabile all'errore o se non è stato possibile determinarlo.

Ad esempio, il bulk loader genererebbe un errore di analisi se rilevasse una riga difettosa come la seguente in un file: RDF nquads

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

Come si può notare, il secondo http nella riga precedente dovrebbe essere preceduto da < anziché da |. L'oggetto di errore risultante in errorLogs in una risposta di stato sarà simile al seguente:

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