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á.
O Amazon Neptune usa dois formatos diferentes para serializar dados de alterações nos grafos para fluxos de log, dependendo de se o grafo foi criado usando o Gremlin ou o SPARQL.
Os dois formatos compartilham um formato comum de serialização de registros, conforme descrito em Formato de resposta da API de fluxos do Neptune, que contém os seguintes campos:
commitTimestamp
: a hora em que a confirmação da transação foi solicitada, em milissegundos a partir da época do Unix.eventId
: o identificador da sequência da registro de alteração do fluxo.data
— O registro serializado de Gremlin, SPARQL ou alteração. OpenCypher Os formatos de serialização de cada registro são descritos em mais detalhes na próxima seção.op
: a operação que criou a alteração.
Tópicos
Formato da serialização de alterações do PG_JSON
nota
A partir da versão 1.1.0.0 do mecanismo, o formato de saída de fluxos do Gremlin (GREMLIN_JSON
) produzido pelo endpoint de fluxos do Gremlin (https://
) está sendo descontinuado. Ele foi substituído pelo PG_JSON, que atualmente é idêntico a Neptune-DNS
:8182/gremlin/streamGREMLIN_JSON
.
Um registro de alterações do Gremlin ou do openCypher, contido no campo data
de uma resposta do fluxo de logs, tem os seguintes campos:
-
id
: string, obrigatório.O ID do elemento do Gremlin ou do openCypher.
-
type
: string, obrigatório.O tipo desse elemento do Gremlin ou do openCypher Deve ser um dos seguintes:
vl
: rótulo de vértice para Gremlin; rótulo de nó para openCypher.vp
: propriedades de vértice para Gremlin; propriedades de nós para openCypher.e
: rótulo de borda e borda para Gremlin; relacionamento e tipo de relacionamento para openCypher.ep
: propriedades de borda para Gremlin; propriedades de relacionamento para openCypher.
-
key
: string, obrigatório.O nome da propriedade. Para rótulos de elementos, o nome é "label".
-
value
: objetovalue
, obrigatório.Trata-se de um objeto JSON que contém um campo
value
para o próprio valor, e um campodatatype
para o tipo de dados JSON desse valor."value": { "value": "
the new value
", "dataType": "the JSON datatype of the new value
" } -
from
: string, opcional.Se esta for uma borda (tipo = “e”), o ID do vértice de correspondente ou do nó de origem.
-
to
: string, opcional.Se esta for uma borda (tipo = “e”), o ID do vértice para correspondente ou nó de destino.
Exemplos do Gremlin
-
Veja a seguir um exemplo de um rótulo de vértice do Gremlin.
{ "id": "
an ID string
", "type": "vl", "key": "label", "value": { "value": "the new value of the vertex label
", "dataType": "String" } } -
Veja a seguir um exemplo de uma propriedade de vértice do Gremlin.
{ "id": "
an ID string
", "type": "vp", "key": "the property name
", "value": { "value": "the new value of the vertex property
", "dataType": "the datatype of the vertex property
" } } -
Veja a seguir um exemplo de uma borda padrão do Gremlin.
{ "id": "
an ID string
", "type": "e", "key": "label", "value": { "value": "the new value of the edge
", "dataType": "String" }, "from": "the ID of the corresponding "from" vertex
", "to": "the ID of the corresponding "to" vertex
" }
Exemplos do openCypher
-
Veja um exemplo de rótulo de nó do openCypher.
{ "id": "
an ID string
", "type": "vl", "key": "label", "value": { "value": "the new value of the node label
", "dataType": "String" } } -
Veja um exemplo de propriedade de nó do openCypher.
{ "id": "
an ID string
", "type": "vp", "key": "the property name
", "value": { "value": "the new value of the node property
", "dataType": "the datatype of the node property
" } } -
Veja um exemplo de relacionamento do openCypher.
{ "id": "
an ID string
", "type": "e", "key": "label", "value": { "value": "the new value of the relationship
", "dataType": "String" }, "from": "the ID of the corresponding source node
", "to": "the ID of the corresponding target node
" }
Formato de serialização de alterações de NQUADS do SPARQL
O Neptune registra alterações nos quadrantes do SPARQL no grafo usando a linguagem Resource Description Framework (RDF) N-QUADS
definida na especificação W3C RDF 1.1 N-Quads
O campo data
no registro de alterações simplesmente contém um campo stmt
que contém uma instrução N-QUADS que expressa o quad alterado, como no exemplo a seguir.
"stmt" : "<https://test.com/s> <https://test.com/p> <https://test.com/o> .\n"