View a markdown version of this page

Indication du délai d'expiration de la requête OpenCypher - 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.

Indication du délai d'expiration de la requête OpenCypher

Le comportement du délai d'expiration des requêtes peut être configuré par requête à l'aide d'un indice de requête au niveau de la requête. QUERY:TIMEOUTMILLISECONDS Il doit être utilisé avec la USING clause. L'indice de requête accepte une valeur longue non négative comme valeur.

AWS CLI
aws neptunedata execute-open-cypher-query \ --endpoint-url https://your-neptune-endpoint:port \ --open-cypher-query "USING QUERY:TIMEOUTMILLISECONDS 100 MATCH(n) RETURN n LIMIT 1"

Pour plus d'informations, consultez execute-open-cypher-queryle manuel de référence des AWS CLI commandes.

SDK
import boto3 from botocore.config import Config client = boto3.client( 'neptunedata', endpoint_url='https://your-neptune-endpoint:port', config=Config(read_timeout=None, retries={'total_max_attempts': 1}) ) response = client.execute_open_cypher_query( openCypherQuery='USING QUERY:TIMEOUTMILLISECONDS 100 MATCH(n) RETURN n LIMIT 1' ) print(response['results'])

Pour des exemples de AWS SDK dans d'autres langues, voirAWS SDK.

awscurl
awscurl https://your-neptune-endpoint:port/openCypher \ --region us-east-1 \ --service neptune-db \ -X POST \ -d "query=USING QUERY:TIMEOUTMILLISECONDS 100 MATCH(n) RETURN n LIMIT 1"
Note

Cet exemple suppose que vos AWS informations d'identification sont configurées dans votre environnement. Remplacez us-east-1 par la région de votre cluster Neptune.

curl
curl https://your-neptune-endpoint:port/openCypher \ -d "query=USING QUERY:TIMEOUTMILLISECONDS 100 MATCH(n) RETURN n LIMIT 1"

Le comportement de temporisation des requêtes prendra en compte le minimum du délai d'expiration au niveau du cluster et du délai d'expiration au niveau de la requête. Consultez les exemples ci-dessous pour comprendre le comportement d'expiration des requêtes. Pour plus d'informations sur le délai d'expiration des requêtes au niveau du cluster, consultez neptune_query_timeout.

# Suppose `neptune_query_timeout` is 10000 ms and query-level timeout is set to 100 ms # It will consider 100 ms as the final timeout curl https://your-neptune-endpoint:port/openCypher \ -d "query=USING QUERY:TIMEOUTMILLISECONDS 100 MATCH(n) RETURN n LIMIT 1" # Suppose `neptune_query_timeout` is 100 ms and query-level timeout is set to 10000 ms # It will still consider 100 ms as the final timeout curl https://your-neptune-endpoint:port/openCypher \ -d "query=USING QUERY:TIMEOUTMILLISECONDS 10000 MATCH(n) RETURN n LIMIT 1"

Si une requête dépasse le délai d'expiration, Neptune y met fin et renvoie une erreur de temporisation. L'opportunité de réessayer une requête expirée dépend de la nature de l'échec et de votre charge de travail. Pour de plus amples informations, consultez Gestion des exceptions et nouvelles tentatives.