Rechercher les fichiers de sortie des requêtes dans Amazon S3 - Amazon Athena

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.

Rechercher les fichiers de sortie des requêtes dans Amazon S3

Les fichiers de sortie des requêtes sont stockés dans des sous-dossiers sur Simple Storage Service (Amazon S3) selon le modèle de chemin d'accès suivant, à moins que la requête ne soit effectuée dans un groupe de travail dont la configuration prévaut sur les paramètres côté client. Lorsque la configuration du groupe de travail remplace les paramètres côté client, la requête utilise le chemin d'accès aux résultats spécifié par le groupe de travail.

QueryResultsLocationInS3/[QueryName|Unsaved/yyyy/mm/dd/]
  • QueryResultsLocationInS3 est l'emplacement du résultat de la requête spécifié soit par les paramètres du groupe de travail, soit par les paramètres côté client. Pour plus d'informations, consultez Spécifier l'emplacement des résultats de la requête dans la suite de ce document.

  • Les sous-dossiers suivants sont créés uniquement pour les requêtes exécutées à partir de la console dont le chemin d'accès aux résultats n'a pas été remplacé par la configuration du groupe de travail. Requêtes exécutées à partir du AWS CLI ou en utilisant l'Athena API sont enregistrés directement dans le QueryResultsLocationInS3.

    • QueryName est le nom de la requête pour laquelle les résultats sont enregistrés. Si la requête a été exécutée mais n'a pas été enregistrée, Unsaved est utilisé.

    • yyyy/mm/dd est la date à laquelle la requête a été exécutée.

Les fichiers associés à une requête CREATE TABLE AS SELECT sont stockés dans un sous-dossier tablesdu modèle ci-dessus.

Identifier les fichiers de sortie des requêtes

Les fichiers sont enregistrés dans l'emplacement des résultats de requête dans Simple Storage Service (Amazon S3) en fonction du nom de la requête, de l'ID de cette dernière et de la date à laquelle elle a été exécutée. Les fichiers de chaque requête sont nommés à l'aide du QueryID, qui est un identifiant unique qu'Athéna attribue à chaque requête lors de son exécution.

Les types de fichiers suivants sont enregistrés :

Type de fichier Modèles d'affectation de nom aux fichiers Description

Fichiers de résultats de requête

QueryID.csv

QueryID.txt

DMLles fichiers de résultats des requêtes sont enregistrés au format valeurs séparées par des virgules (CSV).

DDLles résultats des requêtes sont enregistrés sous forme de fichiers texte brut.

Vous pouvez télécharger les fichiers de résultats de la console à partir du Results (Résultats) lorsque vous utilisez la console ou à partir de History (Historique) des requêtes. Pour de plus amples informations, veuillez consulter Téléchargez les fichiers de résultats des requêtes à l'aide de la console Athena.

Fichiers de métadonnées de requête

QueryID.csv.metadata

QueryID.txt.metadata

DMLet les fichiers de métadonnées de DDL requête sont enregistrés au format binaire et ne sont pas lisibles par l'homme. L'extension du fichier correspond au fichier des résultats de la requête. Athena utilise les métadonnées lors de la lecture des résultats des requêtes à l'aide de l'action GetQueryResults. Bien que ces fichiers puissent être supprimés, nous ne le recommandons pas, car des informations importantes sur la requête sont alors perdues.

Fichiers manifestes de données

QueryID-manifest.csv

Les fichiers manifeste de données sont générés pour suivre les fichiers qu'Athena crée dans les emplacements des sources de données Simple Storage Service (Amazon S3) lorsqu'une requête INSERT INTO est exécutée. Si une requête échoue, le manifeste suit également les fichiers que la requête avait l'intention d'écrire. Le manifeste est utile pour identifier les fichiers orphelins résultant d'un échec de requête.

Pour utiliser le plugin AWS CLI pour identifier l'emplacement de sortie de la requête et les fichiers de résultats, exécutez la aws athena get-query-execution commande, comme dans l'exemple suivant. Remplacez abc1234d-5efg-67hi-jklm-89n0op12qr34 avec l'ID de requête.

aws athena get-query-execution --query-execution-id abc1234d-5efg-67hi-jklm-89n0op12qr34

La commande renvoie un résultat semblable à ce qui suit. Pour une description de chaque paramètre de sortie, voir get-query-executiondans le AWS CLI Référence de commande.

{ "QueryExecution": { "Status": { "SubmissionDateTime": 1565649050.175, "State": "SUCCEEDED", "CompletionDateTime": 1565649056.6229999 }, "Statistics": { "DataScannedInBytes": 5944497, "DataManifestLocation": "s3://amzn-s3-demo-bucket/athena-query-results-123456789012-us-west-1/MyInsertQuery/2019/08/12/abc1234d-5efg-67hi-jklm-89n0op12qr34-manifest.csv", "EngineExecutionTimeInMillis": 5209 }, "ResultConfiguration": { "EncryptionConfiguration": { "EncryptionOption": "SSE_S3" }, "OutputLocation": "s3://amzn-s3-demo-bucket/athena-query-results-123456789012-us-west-1/MyInsertQuery/2019/08/12/abc1234d-5efg-67hi-jklm-89n0op12qr34" }, "QueryExecutionId": "abc1234d-5efg-67hi-jklm-89n0op12qr34", "QueryExecutionContext": {}, "Query": "INSERT INTO mydb.elb_log_backup SELECT * FROM mydb.elb_logs LIMIT 100", "StatementType": "DML", "WorkGroup": "primary" } }