API del piano dati di Neptune Streams - 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à.

API del piano dati di Neptune Streams

Azioni di accesso ai flussi:

Strutture di dati dei flussi:

GetPropertygraphStream (azione)

        Il nome AWS CLI per questa API è: get-propertygraph-stream.

Ottiene un flusso per un grafo delle proprietà.

La funzionalità Neptune Streams consente di generare una sequenza completa di voci di log delle modifiche che registrano automaticamente e in tempo reale ogni modifica apportata ai dati del grafo. GetPropertygraphStream consente di raccogliere queste voci di log delle modifiche per un grafo delle proprietà.

La funzionalità Neptune Streams deve essere abilitata sul cluster database Neptune. Per abilitare i flussi, imposta il parametro neptune_streams del cluster database su 1.

Consulta Acquisizione di modifiche al grafo in tempo reale mediante Neptune Streams.

Quando si richiama questa operazione in un cluster Neptune in cui è abilitata l'autenticazione IAM, all'utente o al ruolo IAM che effettua la richiesta deve essere associata una policy che consenta l'azione IAM neptune-db:GetStreamRecords nel cluster.

Quando si richiama questa operazione in un cluster Neptune in cui è abilitata l'autenticazione IAM, all'utente o al ruolo IAM che effettua la richiesta deve essere associata una policy che consenta le seguenti azioni IAM, a seconda della query:

Nota che puoi limitare le query basate sul grafo delle proprietà utilizzando le seguenti chiavi contestuali IAM:

Consulta Chiavi di condizioni disponibili nelle dichiarazioni delle policy di accesso ai dati IAM di Neptune.

Richiesta

  • commitNum (nella CLI: --commit-num): un valore Long di tipo long (numero intero a 64 bit con segno).

    Il numero di commit del record iniziale da leggere dal flusso di log delle modifiche. Questo parametro è obbligatorio se iteratorType è AT_SEQUENCE_NUMBER o AFTER_SEQUENCE_NUMBER e viene ignorato se iteratorType è TRIM_HORIZON o LATEST.

  • encoding (nella CLI: --encoding): una codifica di tipo string (una stringa con codifica UTF-8).

    Se impostato su TRUE, Neptune comprime la risposta utilizzando la codifica gzip.

  • iteratorType (nella CLI: --iterator-type): un valore IteratorType di tipo string (una stringa con codifica UTF-8).

    Può essere uno dei seguenti:

    • AT_SEQUENCE_NUMBER: indica che la lettura deve iniziare dal numero di sequenza di eventi specificato congiuntamente dai parametri commitNum e opNum.

    • AFTER_SEQUENCE_NUMBER: indica che la lettura deve iniziare immediatamente dopo il numero di sequenza di eventi specificato congiuntamente dai parametri commitNum e opNum.

    • TRIM_HORIZON: indica che la lettura deve iniziare dall'ultimo record non tagliato nel sistema, ovvero il record più vecchio non scaduto (non ancora eliminato) nel flusso di log delle modifiche.

    • LATEST: indica che la lettura deve iniziare dal record più recente non tagliato nel sistema, ovvero il record più recente non scaduto (non ancora eliminato) nel flusso di log delle modifiche.

  • limit (nella CLI: --limit): un valore GetPropertygraphStreamInputLimitLong di tipo long (numero intero a 32 bit con segno), non meno di 1 o più di 100.000 ?st?s.

    Specifica il numero massimo di record da restituire. Esiste anche un limite di dimensioni di 10 MB per la risposta che non può essere modificato e che ha la precedenza sul numero di record specificato nel parametro limit. La risposta include un record che supera la soglia se il limite di 10 MB è stato raggiunto.

    L'intervallo per limit è compreso tra 1 e 100.000. Il valore predefinito è 10.

  • opNum (nella CLI: --op-num): un valore Long di tipo long (numero intero a 64 bit con segno).

    Il numero di sequenza dell'operazione all'interno del commit specificato da cui iniziare la lettura nei dati del flusso di log delle modifiche. Il valore predefinito è 1.

Risposta

  • format: Obbligatorio: una stringa di tipo string (una stringa con codifica UTF-8).

    Formato di serializzazione per i record di modifica restituiti. Attualmente, l'unico valore supportato è PG_JSON.

  • lastEventId: Obbligatorio: un array di mappa con coppie chiave-valore in cui:

        Ogni chiave è una stringa di tipo string (una stringa con codifica UTF-8).

        Ogni valore è una stringa di tipo string (una stringa con codifica UTF-8).

    Identificatore di sequenza dell'ultima modifica nella risposta del flusso.

    Un ID evento è composto da due campi: un commitNum che identifica una transazione che ha modificato il grafo e un opNum che identifica un'operazione specifica all'interno di tale transazione.

    "eventId": { "commitNum": 12, "opNum": 1 }
  • lastTrxTimestampInMillis: Obbligatorio: un valore Long di tipo long (numero intero a 64 bit con segno).

    L'ora in cui è stato richiesto il commit per la transazione, in millisecondi dall'epoca Unix.

  • records: Obbligatorio: un array di oggetti PropertygraphRecord.

    Un array di record serializzati del flusso di log delle modifiche inclusi nella risposta.

  • totalRecords: Obbligatorio: un numero intero di tipo integer (numero intero a 32 bit con segno).

    Il numero totale di record nella risposta.

Strutture di dati dei flussi:

PropertygraphRecord (struttura)

Struttura di un record del grafo delle proprietà.

Campi
  • commitTimestampInMillis: Obbligatorio: un valore Long di tipo long (numero intero a 64 bit con segno).

    L'ora in cui è stato richiesto il commit per la transazione, in millisecondi dall'epoca Unix.

  • data: Obbligatorio: un oggetto PropertygraphData.

    Il record di modifica serializzato di Gremlin o openCypher.

  • eventId: Obbligatorio: un array di mappa con coppie chiave-valore in cui:

        Ogni chiave è una stringa di tipo string (una stringa con codifica UTF-8).

        Ogni valore è una stringa di tipo string (una stringa con codifica UTF-8).

    L'identificatore di sequenza del record di modifica del flusso.

  • isLastOp: questo è un valore booleano di tipo boolean [un valore booleano (vero o falso)].

    Presente solo se questa operazione è l'ultima della transazione. Se è presente, è impostato su true. È utile per garantire che venga consumata un'intera transazione.

  • op: Obbligatorio: una stringa di tipo string (una stringa con codifica UTF-8).

    L'operazione che ha creato la modifica.

PropertygraphData (struttura)

Un record di modifica di Gremlin o openCypher.

Campi
  • from: questa è una stringa di tipo string (una stringa con codifica UTF-8).

    Se si tratta di un arco (tipo = e), è l'ID del vertice from del nodo di origine corrispondente.

  • id: Obbligatorio: una stringa di tipo string (una stringa con codifica UTF-8).

    L'ID dell'elemento Gremlin o openCypher.

  • key: Obbligatorio: una stringa di tipo string (una stringa con codifica UTF-8).

    Il nome della proprietà. Per le etichette degli elementi, questo è label.

  • to: questa è una stringa di tipo string (una stringa con codifica UTF-8).

    Se si tratta di un arco (tipo = e), è l'ID del vertice to o del nodo di destinazione corrispondente.

  • type: Obbligatorio: una stringa di tipo string (una stringa con codifica UTF-8).

    Il tipo di questo elemento Gremlin o openCypher. Deve essere un valore tra:

    • v1: etichetta di vertice per Gremlin o etichetta di nodo per openCypher.

    • vp: proprietà di vertice per Gremlin o proprietà di nodo per openCypher.

    • e: arco ed etichetta di arco per Gremlin o relazione e tipo di relazione per openCypher.

    • ep: proprietà di arco per Gremlin o proprietà di relazione per openCypher.

  • value: Obbligatorio: un documento di tipo document (un contenuto aperto indipendente dal protocollo rappresentato da un modello di dati simile a JSON).

    Si tratta di un oggetto JSON che contiene un campo value per il valore stesso e un campo datatype per il tipo di dati JSON del valore:

    "value": { "value": "(the new value"), "dataType": "(the JSON datatypenew value") }