Indicateur de requête rangeSafe SPARQL - Amazon Neptune

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Indicateur de requête rangeSafe SPARQL

Utilisez cet indicateur de requête pour désactiver la promotion de type pour une requête SPARQL.

Lorsque vous soumettez une requête SPARQL qui filtre une plage ou une valeur numérique avec FILTER, le moteur de requêtes Neptune doit normalement utiliser la promotion de type lorsqu'il exécute la requête. Autrement dit, il doit examiner les valeurs de tous les types susceptibles de contenir la valeur sur laquelle porte le filtre.

Par exemple, si vous filtrez les valeurs égales à 55, le moteur doit rechercher les entiers égaux à 55, les entiers longs égaux à 55L, les nombres flottants égaux à 55,0, etc. Chaque promotion de type implique une recherche supplémentaire au niveau du stockage, ce qui peut entraîner un délai étonnamment long pour terminer une requête apparemment simple.

Souvent, la promotion de type n'est pas nécessaire, car vous savez déjà que vous n'avez besoin de trouver que les valeurs d'un type spécifique. Dans ce cas, vous pouvez accélérer considérablement les requêtes en utilisant l'indicateur de requête rangeSafe afin de désactiver la promotion de type.

Syntaxe des indicateurs rangeSafe SPARQL

L'indicateur de requête rangeSafe utilise la valeur true pour désactiver la promotion de type. Il accepte également la valeur false (valeur par défaut).

Exemple. L'exemple suivant montre comment désactiver la promotion de type lors du filtrage d'une valeur entière o supérieure à 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>)