Respostas Get-Status do carregador do Neptune - Amazon Neptune

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Respostas Get-Status do carregador do Neptune

O exemplo de resposta a seguir do Neptune API Get-Status descreve a estrutura geral da resposta, explica os vários campos e seus tipos de dados, bem como os detalhes do tratamento e do registro de erros.

Layout de resposta do Neptune Loader Get-Status JSON

O layout geral de uma resposta de status do carregador é o seguinte:

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

Objetos de resposta overallStatus e failedFeeds Get-Status do carregador do Neptune

As possíveis respostas exibidas para cada feed com falha, incluindo as descrições dos erros, são as mesmas para o objeto overallStatus em uma resposta Get-Status.

Os seguintes campos são exibidos no objeto overallStatus de todas as cargas e o objeto failedFeeds de cada feed com falha:

  • fullUri— O URI do arquivo ou arquivos a serem carregados.

    Tipo: sequência

    Formato: s3://bucket/key.

  • runNumber: o número de execução dessa carga ou feed. É incrementado quando a carga é reiniciada.

    Tipo: longo não assinado.

  • retryNumber: o número de repetição dessa carga ou feed. É incrementado quando o carregador tenta novamente um feed ou carga automaticamente.

    Tipo: longo não assinado.

  • status: o status exibido da carga ou do feed. LOAD_COMPLETED indica uma carga bem-sucedida sem problemas. Para obter uma lista de outras mensagens de status de carregamento, consulte Erro de carregador do Neptune e mensagens de feed.

    Tipo: string.

  • totalTimeSpent: o tempo, em segundos, gasto para analisar e inserir os dados para a carga ou o feed. Isso não inclui o tempo gasto para buscar a lista de arquivos de origem.

    Tipo: longo não assinado.

  • totalRecords: total de registros carregados ou que tentaram carregar.

    Tipo: longo não assinado.

    Observe que, ao carregar de um CSV arquivo, a contagem de registros não se refere ao número de linhas carregadas, mas sim ao número de registros individuais nessas linhas. Por exemplo, pegue um pequeno CSV arquivo como este:

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

    O Neptune consideraria que esse arquivo contém três registros, a saber:

    P-1 label Player P-1 name Stokes P-1 team England
  • totalDuplicates: o número de registros duplicados encontrados.

    Tipo: longo não assinado.

    Como no caso da totalRecords contagem, esse valor contém o número de registros duplicados individuais em um CSV arquivo, não o número de linhas duplicadas. Veja esse pequeno CSV arquivo, por exemplo:

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

    O status exibido após o carregamento ficaria assim, relatando seis registros no total, dos quais três são duplicados:

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

    Para openCypher cargas, uma duplicata é contada quando:

    • O carregador detecta que uma linha em um arquivo de nó tem um ID sem um espaço de ID que é igual a outro valor de ID sem um espaço de ID, seja em outra linha ou pertencente a um nó existente.

    • O carregador detecta que uma linha em um arquivo de nó tem um ID com um espaço de ID igual a outro valor de ID com um espaço de ID, seja em outra linha ou pertencente a um nó existente.

    Consulte Considerações especiais para carregar dados openCypher .

  • parsingErrors: o número de erros de análise encontrados.

    Tipo: longo não assinado.

  • datatypeMismatchErrors: o número de registros com um tipo de dados que não corresponderam aos dados fornecidos.

    Tipo: longo não assinado.

  • insertErrors: o número de registros que não puderam ser inseridos devido a erros.

    Tipo: longo não assinado.

Objetos de resposta errors Get-Status do carregador do Neptune

Os erros se enquadram nas seguintes categorias:

  • Error 400— Um erro inválido loadId retorna uma solicitação HTTP 400 inválida. A mensagem descreve o erro.

  • Error 500— Uma solicitação válida que não pode ser processada retorna um erro HTTP 500 interno do servidor. A mensagem descreve o erro.

Consulte Erro de carregador do Neptune e mensagens de feed para obter uma lista das mensagens de erro e feed geradas pelo carregador em caso de erros.

Quando ocorre um erro, um JSON errors objeto é retornado na BODY resposta, com os seguintes campos:

  • startIndex: o índice do primeiro erro incluído.

    Tipo: longo não assinado.

  • endIndex: o índice do último erro incluído.

    Tipo: longo não assinado.

  • loadId: o ID da carga. Você pode usar esse ID para imprimir os erros do carregamento definindo o parâmetro errors como TRUE.

    Tipo: string.

  • errorLogs: uma lista dos erros.

    Tipo: lista.

Objetos de resposta errorLogs Get-Status do carregador do Neptune

O objeto errorLogs em errors na resposta Get-Status do carregador contém um objeto que descreve cada erro usando os seguintes campos:

  • errorCode: identifica a natureza do erro.

    Pode utilizar um dos seguintes valores:

    • 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 (gerado quando o carregador em massa não consegue determinar o tipo do erro).

  • errorMessage: uma mensagem descrevendo o erro.

    Pode ser uma mensagem genérica associada ao código de erro ou uma mensagem específica que contenha detalhes, por exemplo, sobre um vértice de/para ausente ou sobre um erro de análise.

  • fileName: o nome do feed.

  • recordNum: no caso de um erro de análise, esse é o número do registro no arquivo do registro que não pôde ser analisado. Será definido como zero se o número do registro não for aplicável ao erro ou se não puder ser determinado.

Por exemplo, o carregador em massa geraria um erro de análise se encontrasse uma linha com defeito, como a seguinte, em um arquivo: RDF nquads

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

Como você pode ver, o segundo http na linha acima deve ser precedido por < em vez de |. O objeto de erro resultante abaixo de errorLogs em uma resposta de status deverá ser semelhante a este:

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