Note:

You are viewing the documentation for an older major version of the AWS CLI (version 1).

AWS CLI version 2, the latest major version of AWS CLI, is now stable and recommended for general use. To view this page for the AWS CLI version 2, click here. For more information see the AWS CLI version 2 installation instructions and migration guide.

[ aws . neptunedata ]

get-propertygraph-stream

Description

Gets a stream for a property graph.

With the Neptune Streams feature, you can generate a complete sequence of change-log entries that record every change made to your graph data as it happens. GetPropertygraphStream lets you collect these change-log entries for a property graph.

The Neptune streams feature needs to be enabled on your Neptune DBcluster. To enable streams, set the neptune_streams DB cluster parameter to 1 .

See Capturing graph changes in real time using Neptune streams .

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that allows the neptune-db:GetStreamRecords IAM action in that cluster.

When invoking this operation in a Neptune cluster that has IAM authentication enabled, the IAM user or role making the request must have a policy attached that enables one of the following IAM actions, depending on the query:

Note that you can restrict property-graph queries using the following IAM context keys:

See Condition keys available in Neptune IAM data-access policy statements ).

See also: AWS API Documentation

get-propertygraph-stream uses document type values. Document types follow the JSON data model where valid values are: strings, numbers, booleans, null, arrays, and objects. For command input, options and nested parameters that are labeled with the type document must be provided as JSON. Shorthand syntax does not support document types.

Synopsis

  get-propertygraph-stream
[--limit <value>]
[--iterator-type <value>]
[--commit-num <value>]
[--op-num <value>]
[--encoding <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]

Options

--limit (long)

Specifies the maximum number of records to return. There is also a size limit of 10 MB on the response that can't be modified and that takes precedence over the number of records specified in the limit parameter. The response does include a threshold-breaching record if the 10 MB limit was reached.

The range for limit is 1 to 100,000, with a default of 10.

--iterator-type (string)

Can be one of:

  • AT_SEQUENCE_NUMBER – Indicates that reading should start from the event sequence number specified jointly by the commitNum and opNum parameters.
  • AFTER_SEQUENCE_NUMBER – Indicates that reading should start right after the event sequence number specified jointly by the commitNum and opNum parameters.
  • TRIM_HORIZON – Indicates that reading should start at the last untrimmed record in the system, which is the oldest unexpired (not yet deleted) record in the change-log stream.
  • LATEST – Indicates that reading should start at the most recent record in the system, which is the latest unexpired (not yet deleted) record in the change-log stream.

Possible values:

  • AT_SEQUENCE_NUMBER
  • AFTER_SEQUENCE_NUMBER
  • TRIM_HORIZON
  • LATEST

--commit-num (long)

The commit number of the starting record to read from the change-log stream. This parameter is required when iteratorType is``AT_SEQUENCE_NUMBER`` or AFTER_SEQUENCE_NUMBER , and ignored when iteratorType is TRIM_HORIZON or LATEST .

--op-num (long)

The operation sequence number within the specified commit to start reading from in the change-log stream data. The default is 1 .

--encoding (string)

If set to TRUE, Neptune compresses the response using gzip encoding.

Possible values:

  • gzip

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

Global Options

--debug (boolean)

Turn on debug logging.

--endpoint-url (string)

Override command's default URL with the given URL.

--no-verify-ssl (boolean)

By default, the AWS CLI uses SSL when communicating with AWS services. For each SSL connection, the AWS CLI will verify SSL certificates. This option overrides the default behavior of verifying SSL certificates.

--no-paginate (boolean)

Disable automatic pagination.

--output (string)

The formatting style for command output.

  • json
  • text
  • table

--query (string)

A JMESPath query to use in filtering the response data.

--profile (string)

Use a specific profile from your credential file.

--region (string)

The region to use. Overrides config/env settings.

--version (string)

Display the version of this tool.

--color (string)

Turn on/off color output.

  • on
  • off
  • auto

--no-sign-request (boolean)

Do not sign requests. Credentials will not be loaded if this argument is provided.

--ca-bundle (string)

The CA certificate bundle to use when verifying SSL certificates. Overrides config/env settings.

--cli-read-timeout (int)

The maximum socket read time in seconds. If the value is set to 0, the socket read will be blocking and not timeout. The default value is 60 seconds.

--cli-connect-timeout (int)

The maximum socket connect time in seconds. If the value is set to 0, the socket connect will be blocking and not timeout. The default value is 60 seconds.

Output

lastEventId -> (map)

Sequence identifier of the last change in the stream response.

An event ID is composed of two fields: a commitNum , which identifies a transaction that changed the graph, and an opNum , which identifies a specific operation within that transaction:

key -> (string)

value -> (string)

lastTrxTimestampInMillis -> (long)

The time at which the commit for the transaction was requested, in milliseconds from the Unix epoch.

format -> (string)

Serialization format for the change records being returned. Currently, the only supported value is PG_JSON .

records -> (list)

An array of serialized change-log stream records included in the response.

(structure)

Structure of a property graph record.

commitTimestampInMillis -> (long)

The time at which the commit for the transaction was requested, in milliseconds from the Unix epoch.

eventId -> (map)

The sequence identifier of the stream change record.

key -> (string)

value -> (string)

data -> (structure)

The serialized Gremlin or openCypher change record.

id -> (string)

The ID of the Gremlin or openCypher element.

type -> (string)

The type of this Gremlin or openCypher element. Must be one of:

  • **v1 ** - Vertex label for Gremlin, or node label for openCypher.
  • **vp ** - Vertex properties for Gremlin, or node properties for openCypher.
  • **e ** - Edge and edge label for Gremlin, or relationship and relationship type for openCypher.
  • **ep ** - Edge properties for Gremlin, or relationship properties for openCypher.

key -> (string)

The property name. For element labels, this is label .

value -> (document)

This is a JSON object that contains a value field for the value itself, and a datatype field for the JSON data type of that value:

from -> (string)

If this is an edge (type = e ), the ID of the corresponding from vertex or source node.

to -> (string)

If this is an edge (type = e ), the ID of the corresponding to vertex or target node.

op -> (string)

The operation that created the change.

isLastOp -> (boolean)

Only present if this operation is the last one in its transaction. If present, it is set to true. It is useful for ensuring that an entire transaction is consumed.

totalRecords -> (integer)

The total number of records in the response.