Format de réponse de l'API Neptune Streams - Amazon Neptune

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Format de réponse de l'API Neptune Streams

Une réponse à une demande d'API REST Neptune Streams comporte les champs suivants :

  • lastEventId : identifiant de séquence de la dernière modification dans la réponse du flux. Un ID d'événement se compose de deux champs : un commitNum qui identifie une transaction ayant modifié le graphe et un opNum qui identifie une opération spécifique au sein de cette transaction. Voici un exemple :

    "eventId": { "commitNum": 12, "opNum": 1 }
  • lastTrxTimestamp : heure à laquelle la validation de la transaction a été demandée, en millisecondes, à partir de l'Unix Epoch.

  • format : format de sérialisation pour les enregistrements de modification renvoyés. Les valeurs possibles sont PG_JSON pour les enregistrements de modification Gremlin ou openCypher et NQUADS pour les enregistrements de modification SPARQL.

  • records : tableau des enregistrements sérialisés du flux de journaux de modifications inclus dans la réponse. Chaque enregistrement du tableau records contient les champs suivants :

    • commitTimestamp : heure à laquelle la validation de la transaction a été demandée, en millisecondes, à partir de l'Unix Epoch.

    • eventId : identifiant de séquence de l'enregistrement de dernière modification du flux.

    • data— L'enregistrement sérialisé de Gremlin, SPARQL ou OpenCypher de modification. Les formats de sérialisation de chaque enregistrement sont décrits plus en détail dans la section suivante, Formats de sérialisation dans Neptune Streams.

    • op : opération à l'origine de la modification.

    • isLastOp : présent uniquement si cette opération est la dernière dans sa transaction. Lorsqu'il est présent, il est défini sur true. Utile pour s'assurer qu'une transaction est consommée dans son intégralité.

  • totalRecords : nombre total d'enregistrements dans la réponse.

Par exemple, la réponse suivante renvoie les données de modification Gremlin pour une transaction contenant plusieurs opérations :

{ "lastEventId": { "commitNum": 12, "opNum": 1 }, "lastTrxTimestamp": 1560011610678, "format": "PG_JSON", "records": [ { "commitTimestamp": 1560011610678, "eventId": { "commitNum": 1, "opNum": 1 }, "data": { "id": "d2b59bf8-0d0f-218b-f68b-2aa7b0b1904a", "type": "vl", "key": "label", "value": { "value": "vertex", "dataType": "String" } }, "op": "ADD" } ], "totalRecords": 1 }

La réponse suivante renvoie les données de modification SPARQL pour la dernière opération d'une transaction (opération identifiée par EventId(97, 1) dans le numéro de transaction 97).

{ "lastEventId": { "commitNum": 97, "opNum": 1 }, "lastTrxTimestamp": 1561489355102, "format": "NQUADS", "records": [ { "commitTimestamp": 1561489355102, "eventId": { "commitNum": 97, "opNum": 1 }, "data": { "stmt": "<https://test.com/s> <https://test.com/p> <https://test.com/o> .\n" }, "op": "ADD", "isLastOp": true } ], "totalRecords": 1 }