propertygraph_streams
Creates, updates, deletes, gets or lists a propertygraph_streams resource.
Overview
| Name | propertygraph_streams |
| Type | Resource |
| Id | aws.neptunedata.propertygraph_streams |
Fields
The following fields are returned by SELECT queries:
- get_propertygraph_stream
| Name | Datatype | Description |
|---|---|---|
format_ | string | Serialization format for the change records being returned. Currently, the only supported value is PG_JSON. |
last_event_id | object | 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: |
last_trx_timestamp_in_millis | integer (int64) | The time at which the commit for the transaction was requested, in milliseconds from the Unix epoch. |
records | array | An array of serialized change-log stream records included in the response. |
total_records | integer | The total number of records in the response. |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get_propertygraph_stream | select | region | limit, iteratorType, commitNum, opNum, Accept-Encoding | 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: neptune-db:QueryLanguage:Gremlin neptune-db:QueryLanguage:OpenCypher See Condition keys available in Neptune IAM data-access policy statements). |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
region | string | AWS region (default: us-east-1) |
Accept-Encoding | string | If set to TRUE, Neptune compresses the response using gzip encoding. |
commitNum | integer (int64) | The commit number of the starting record to read from the change-log stream. This parameter is required when iteratorType isAT_SEQUENCE_NUMBER or AFTER_SEQUENCE_NUMBER, and ignored when iteratorType is TRIM_HORIZON or LATEST. |
iteratorType | 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. |
limit | integer (int64) | 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. |
opNum | integer (int64) | The operation sequence number within the specified commit to start reading from in the change-log stream data. The default is 1. |
SELECT examples
- get_propertygraph_stream
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: neptune-db:QueryLanguage:Gremlin neptune-db:QueryLanguage:OpenCypher See Condition keys available in Neptune IAM data-access policy statements).
SELECT
format_,
last_event_id,
last_trx_timestamp_in_millis,
records,
total_records
FROM aws.neptunedata.propertygraph_streams
WHERE region = '{{ region }}' -- required
AND limit = '{{ limit }}'
AND iteratorType = '{{ iteratorType }}'
AND commitNum = '{{ commitNum }}'
AND opNum = '{{ opNum }}'
AND `Accept-Encoding` = '{{ Accept-Encoding }}'
;