將自訂 ID 注入至 Neptune Gremlin 或 SPARQL 查詢 - Amazon Neptune

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

將自訂 ID 注入至 Neptune Gremlin 或 SPARQL 查詢

根據預設,Neptune 會將唯一 queryId 值指派給每個查詢。您可以使用此 ID 來取得執行中查詢的相關資訊 (請參閱Gremlin 查詢狀態 APISPARQL 查詢狀態 API),或取消它 (請參閱Gremlin 查詢取消SPARQL 查詢取消)。

Neptune 也可讓您在 HTTP 標頭中,或使用 queryId 查詢提示為 SPARQL 查詢指定自己的 queryId 值,以用於 Gremlin 或 SPARQL 查詢。指派您自己的 queryID 可讓您輕鬆追蹤查詢,以取得狀態或取消該查詢。

注意

版本 1.0.1.0.200463.0 (2019 年 10 月 15 日) 開始就可以使用這項功能。

使用 HTTP 標頭來注入自訂 queryId

對於 Gremlin 和 SPARQL 二者,HTTP 標頭可用來將您自己的 queryId 值注入至查詢。

Gremlin 範例

curl -XPOST https://your-neptune-endpoint:port \ -d "{\"gremlin\": \ \"g.V().limit(1).count()\" , \ \"queryId\":\"4d5c4fae-aa30-41cf-9e1f-91e6b7dd6f47\" }"

SPARQL 範例

curl https://your-neptune-endpoint:port/sparql \ -d "query=SELECT * WHERE { ?s ?p ?o } " \ --data-urlencode \ "queryId=4d5c4fae-aa30-41cf-9e1f-91e6b7dd6f47"

使用 SPARQL 查詢提示來注入自訂 queryId

以下範例說明如何使用 SPARQL queryId 查詢提示,將自訂 queryId 值注入至 SPARQL 查詢:

curl https://your-neptune-endpoint:port/sparql \ -d "query=PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#> \ SELECT * WHERE { hint:Query hint:queryId \"4d5c4fae-aa30-41cf-9e1f-91e6b7dd6f47\" \ {?s ?p ?o}}"

使用 queryId 值檢查查詢狀態

Gremlin 範例

curl https://your-neptune-endpoint:port/gremlin/status \ -d "queryId=4d5c4fae-aa30-41cf-9e1f-91e6b7dd6f47"

SPARQL 範例

curl https://your-neptune-endpoint:port/sparql/status \ -d "queryId=4d5c4fae-aa30-41cf-9e1f-91e6b7dd6f47"