View a markdown version of this page

Neptune-Streams-API-Antwortformat - 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-Streams-API-Antwortformat

Eine Antwort auf eine Neptune-Streams-REST-API-Anforderung enthält die folgenden Felder:

  • lastEventId   –   Sequenz-ID der letzten Änderung in der Stream-Antwort. Eine Ereignis-ID besteht aus zwei Feldern: Ein commitNum identifiziert eine Transaktion, die das Diagramm geändert hat, und ein opNum identifiziert eine bestimmte Operation innerhalb dieser Transaktion. Dies wird im folgenden Beispiel veranschaulicht.

    "eventId": { "commitNum": 12, "opNum": 1 }
  • lastTrxTimestamp   –   Der Zeitpunkt, zu dem das Commit für die Transaktion angefordert wurde, in Millisekunden ab der Unix-Epoche.

  • format   –   Serialisierungsformat für die zurückgegebenen Änderungsdatensätze. Die möglichen Werte sind PG_JSON für Gremlin- oder openCypher-Änderungsdatensätze und NQUADS für SPARQL-Änderungsdatensätze.

  • records   –   Ein Array serialisierter Änderungsprotokoll-Stream-Datensätze, die in der Antwort enthalten sind. Jeder Datensatz im records-Array enthält die folgenden Felder:

    • commitTimestamp   –   Der Zeitpunkt, zu dem das Commit für die Transaktion angefordert wurde, in Millisekunden ab der Unix-Epoche.

    • eventId   –   Die Sequenz-ID des Stream-Änderungsdatensatzes.

    • data— Der serialisierte Gremlin-, SPARQL- oder Change-Record. OpenCypher Die Serialisierungsformate für jeden Datensatz werden im nächsten Abschnitt (Serialisierungsformate in Neptune-Streams) ausführlicher beschrieben.

    • op   –   Die Operation, die die Änderung erstellt hat. Folgende sind gültige Werte:

      • ADD— Zeigt an, dass dem Diagramm ein neues Element (z. B. ein Scheitelpunkt, eine Kante, eine Eigenschaft oder ein Tripel) hinzugefügt wurde.

      • REMOVE— Zeigt an, dass ein vorhandenes Element aus dem Diagramm entfernt wurde.

      Neptune drückt eine Änderung an einem vorhandenen Element als Datensatz aus, gefolgt von einem REMOVE ADD Datensatz.

    • isLastOp   –   Nur vorhanden, wenn diese Operation die letzte in ihrer Transaktion ist. Wenn vorhanden, ist sie auf true festgelegt. Nützlich, um sicherzustellen, dass die gesamte Transaktion genutzt wird.

  • totalRecords   –   Die Gesamtanzahl der Datensätze in der Antwort.

Die folgende Antwort gibt beispielsweise Gremlin-Änderungsdaten für eine Transaktion zurück, die mehr als eine Operation enthält:

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

Die folgende Antwort gibt SPARQL-Änderungsdaten für die letzte Operation in einer Transaktion zurück (die Operation, die EventId(97, 1) in Transaktionsnummer 97 identifiziert hat).

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