La sugerencia de consulta queryTimeout SPARQL - Amazon Neptune

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

La sugerencia de consulta queryTimeout SPARQL

La sugerencia de consulta queryTimeout especifica un tiempo de espera que es menor que el conjunto de valores deneptune_query_timeout en el grupo de parámetros de base de datos.

Si la consulta termina como resultado de esta sugerencia, se genera una TimeLimitExceededException, con un mensaje Operation terminated (deadline exceeded).

queryTimeoutSPARQLla sintaxis de la sugerencia

PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#> SELECT ... WHERE { hint:Query hint:queryTimeout 10 . # OR hint:Query hint:queryTimeout "10" . # OR hint:Query hint:queryTimeout "10"^^xsd:integer . ... }

El valor del tiempo de espera se expresa en milisegundos.

El valor del tiempo de espera debe ser menor que el valor de neptune_query_timeout establecido en el grupo de parámetros de la base de datos. De lo contrario, se generará una excepción MalformedQueryException con un mensaje Malformed query: Query hint 'queryTimeout' must be less than neptune_query_timeout DB Parameter Group.

Se debe especificar la sugerencia de consulta queryTimeout en la cláusula WHERE de la consulta principal o en la cláusula WHERE de uno de las subconsultas tal como se en el ejemplo a continuación:

Debe configurarse solo una vez en todas las consultas o subconsultas y en las secciones de SPARQL actualizaciones (por ejemplo, y). INSERT DELETE De lo contrario, se generará una excepción MalformedQueryException con un mensaje Malformed query: Query hint 'queryTimeout' must be set only once.

Ámbitos disponibles

La queryTimeout sugerencia se puede aplicar tanto a las SPARQL consultas como a las actualizaciones.

  • En una SPARQL consulta, puede aparecer en la WHERE cláusula de la consulta principal o en una subconsulta.

  • En una SPARQL actualización, se puede establecer en la WHERE cláusula INSERTDELETE, o. Si hay varias cláusulas de actualización, solo se puede establecer en una de ellas.

Para obtener más información acerca de los ámbitos de sugerencia de consulta, vea Alcance de las sugerencias de SPARQL consulta en Neptune.

queryTimeoutSPARQLejemplo de sugerencia

A continuación se muestra un ejemplo de uso de hint:queryTimeout en la cláusula principal WHERE de una consulta UPDATE:

PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#> INSERT { ?s ?p ?o } WHERE { hint:Query hint:queryTimeout 100 . ?s ?p ?o . }

Aquí, la hint:queryTimeout se encuentra en la cláusula WHERE de una subconsulta:

PREFIX hint: <http://aws.amazon.com/neptune/vocab/v01/QueryHints#> SELECT * { ?s ?p ?o . { SELECT ?s WHERE { hint:Query hint:queryTimeout 100 . ?s ?p1 ?o1 . } } }