调用 Neptune Streams REST API - Amazon Neptune
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

调用 Neptune Streams REST API

您可以使用 REST API 访问 Neptune Streams,该 API 将向以下其中一个本地端点发送 HTTP GET 请求:

  • 对于 SPARQL 图形数据库:https://Neptune-DNS:8182/sparql/stream

  • 对于 Gremlin 或 openCypher 图形数据库:https://Neptune-DNS:8182/propertygraph/streamhttps://Neptune-DNS:8182/pg/stream

注意

引擎版本 1.1.0.0 开始,Gremlin 流端点 (https://Neptune-DNS:8182/gremlin/stream) 及其关联的输出格式 (GREMLIN_JSON) 已被弃用。为了向后兼容,它仍然受支持,但可能会在将来版本中移除。

仅允许进行 HTTP GET 操作。

如果 HTTP 请求包含 Accept-Encoding 标头并将 gzip 指定为可接受的压缩格式(即 "Accept-Encoding: gzip"),则 Neptune 支持对响应进行 gzip 压缩。

参数
  • limit – long,可选。范围:1–100000。默认值:10。

    指定要返回的最大记录数。响应还受 10 MB 大小的限制,该大小限制不能修改,并且优先级高于 limit 参数中指定的记录数。如果达到了 10 MB 限制,响应中将包含一条超出阈值记录。

  • iteratorType – 字符串,可选。

    该参数可接受以下值:

    • AT_SEQUENCE_NUMBER(默认值)– 指示读取应该从由 commitNumopNum 参数共同指定的事件序列号开始。

    • AFTER_SEQUENCE_NUMBER – 指示读取应该从紧接在由 commitNumopNum 参数共同指定的事件序列号之后的事件序列号开始。

    • TRIM_HORIZON – 指示读取应该从系统中最后一条未剪裁的记录开始,该记录是更改日志流中时间最久的未过期(尚未删除)记录。当您没有特定的开始事件序列号时,该模式在应用程序启动期间非常有用。

    • LATEST – 指示读取应该从系统中最近的记录开始,该记录是更改日志流中最新的未过期(尚未删除)记录。当需要从当前的流顶部读取记录以免处理较旧的记录时,例如在灾难恢复或零停机时间升级期间,这很有用。请注意,在此模式下,最多只返回一条记录。

  • commitNum – long,当 iteratorType 为 AT_SEQUENCE_NUMBERAFTER_SEQUENCE_NUMBER 时是必需的。

    从更改日志流中读取的起始记录的提交编号。

    如果 iteratorTypeTRIM_HORIZONLATEST,则忽略此参数。

  • opNum – long,可选(默认值为 1)。

    从更改日志流数据中开始读取的指定提交中的操作序列号。

对于更改 SPARQL 图形数据的操作,通常是每个操作仅生成一条更改记录。但是,更改 Gremlin 图形数据的操作可以是每个操作生成多条更改记录,如以下示例所示:

  • INSERT – Gremlin 顶点可以有多个标签,而 Gremlin 元素可以有多个属性。插入元素时,将为每个标签和属性生成单独的更改记录。

  • UPDATE – 更改 Gremlin 元素属性时,将生成两条更改记录:第一条为删除先前值的记录,第二条为插入新值的记录。

  • DELETE – 为每个删除的元素属性生成一条单独的更改记录。例如,当删除具有属性的 Gremlin 边缘时,将为每个属性生成一条更改记录,然后,生成一条删除边缘标签的更改记录。

    删除 Gremlin 顶点时,将首先删除所有入边和出边属性,然后删除边缘标签、顶点属性,最后是顶点标签。上述每个删除操作都会生成一条更改记录。