rangeSafe SPARQL 查詢提示 - Amazon Neptune

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

rangeSafe SPARQL 查詢提示

使用此查詢提示來關閉 SPARQL 查詢的類型提升。

當您提交其包含的 FILTER 超過數值或範圍的 SPARQL 查詢時,Neptune 查詢引擎通常必須在執行查詢時使用類型提升。這表示它必須檢查可以保留您正在篩選之值的每種類型的值。

例如,如果您要篩選等於 55 的值,則引擎必須尋找等於 55 的整數、等於 55L 的長整數、等於 55.0 的浮點數等等。每個類型提升都需要對儲存體進行額外查詢,這可能會導致明顯簡單的查詢需要非預期的長時間才能完成。

通常類型提升不是必要的,因為您事先知道只需要找到一個特定類型的值即可。若是這種情況,您可以使用 rangeSafe 查詢提示來關閉類型提升,以大幅加快查詢速度。

rangeSafe SPARQL 提示語法

rangeSafe 查詢提示會採取 true 值來關閉類型提升。它也接受 false 值 (預設值)。

範例。以下範例展示如何在篩選 o 大於 1 的整數值時關閉類型提升:

PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#> SELECT * { ?s ?p ?o . hint:Prior hint:rangeSafe 'true' . FILTER (?o > '1'^^<http://www.w3.org/2001/XMLSchema#int>)