

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.

# Interrogation des tables Amazon S3 avec Athena
<a name="s3-tables-integrating-athena"></a>

Amazon Athena est un service de requête interactif qui permet d’analyser les données directement dans Amazon S3 à l’aide du langage SQL standard. Pour de plus amples informations, veuillez consulter [Qu'est-ce que Amazon Athena ?](https://docs.aws.amazon.com//athena/latest/ug/what-is.html) dans le *Guide de l'utilisateur d'Amazon Athena*.

Après avoir intégré vos compartiments de tables aux services AWS d'analyse, vous pouvez exécuter des requêtes en langage de définition de données (DDL), en langage de manipulation de données (DML) et en langage de requête de données (DQL) sur des tables S3 à l'aide d'Athena. Pour plus d’informations sur la manière d’interroger des tables dans un compartiment de table, consultez [Enregistrement des catalogues de compartiments de table S3](https://docs.aws.amazon.com//athena/latest/ug/gdc-register-s3-table-bucket-cat.html) dans le *Guide de l’utilisateur Amazon Athena*.

Vous pouvez également exécuter des requêtes dans Athena à partir de la console Amazon S3. 

**Important**  
Lorsque vous créez des tables, assurez-vous d’utiliser toutes les lettres minuscules dans les noms et les définitions de tables. Par exemple, assurez-vous que les noms des tables et des colonnes sont tous en minuscules. Si le nom ou la définition de votre table contient des majuscules, le tableau n'est pas pris en charge par AWS Lake Formation ou par le AWS Glue Data Catalog. Dans ce cas, votre table ne sera pas visible par les services d' AWS analyse tels qu'Amazon Athena, même si vos compartiments de tables sont intégrés aux AWS services d'analyse.   
Si la définition de votre table contient des majuscules, le message d'erreur suivant s'affiche lorsque vous exécutez une `SELECT` requête dans Athena : « GENERIC\$1INTERNAL\$1ERROR : Get table request failed : com.amazonaws.services.glue.model. ValidationException: ressource de fédération non prise en charge - Noms de table ou de colonne non valides. »

## Utilisation de la console S3 et d’Amazon Athena
<a name="query-table-console"></a>

La procédure suivante utilise la console Amazon S3 pour accéder à l’éditeur de requêtes Athena afin que vous puissiez interroger une table avec Amazon Athena. 

**Note**  
Avant d’effectuer les étapes suivantes, assurez-vous d’avoir intégré vos compartiments de table aux services d’analytique AWS de cette région. Pour de plus amples informations, veuillez consulter [Intégration des tables Amazon S3 aux services AWS d'analyse](s3-tables-integrating-aws.md).

**Pour interroger une table**

1. Connectez-vous à la console Amazon S3 AWS Management Console et ouvrez-la à l'adresse [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. Dans le volet de navigation de gauche, choisissez **Compartiments de tables**.

1. Sur la page **Compartiments de table**, choisissez le compartiment qui contient la table que vous souhaitez interroger.

1. Dans la page des détails du compartiment, choisissez le bouton radio en regard du nom de la table que vous souhaitez interroger. 

1. Choisissez **Interroger une table avec Athena**.

1. La console Amazon Athena s’ouvre et l’éditeur de requêtes Athena apparaît avec un exemple de requête `SELECT` chargé pour vous. Modifiez cette requête en fonction de votre cas d’utilisation.

   Dans l’éditeur de requêtes, le champ **Catalogue** doit être renseigné avec **s3tablescatalog/** suivi du nom de votre compartiment de table, par exemple **s3tablescatalog/*amzn-s3-demo-bucket***. Le champ **Base de données** doit être renseigné avec l’espace de noms dans lequel votre table est stocké. 
**Note**  
Si vous ne voyez pas ces valeurs dans les champs **Catalogue** et **Base de données**, assurez-vous d’avoir intégré vos compartiments de table aux services d’analytique AWS de cette région. Pour de plus amples informations, veuillez consulter [Intégration des tables Amazon S3 aux services AWS d'analyse](s3-tables-integrating-aws.md). 

1. Pour exécuter la requête, choisissez ensuite **Run** (Exécuter).
**Note**  
Si vous recevez le message d’erreur « Autorisations insuffisantes pour exécuter la requête. Le principal ne dispose d’aucun privilège sur la ressource spécifiée. » lorsque vous essayez d’exécuter une requête dans Athena, vous devez disposer des autorisations Lake Formation nécessaires sur la table. Pour de plus amples informations, veuillez consulter [Octroi de l’autorisation Lake Formation sur une table ou une base de données](grant-permissions-tables.md#grant-lf-table).
Si le message d'erreur « Iceberg ne peut pas accéder à la ressource demandée » s'affiche lorsque vous essayez d'exécuter la requête, accédez à la AWS Lake Formation console et assurez-vous que vous vous êtes accordé des autorisations sur le catalogue de compartiments de tables et la base de données (espace de noms) que vous avez créés. Ne spécifiez pas de table lorsque vous accordez ces autorisations. Pour de plus amples informations, veuillez consulter [Octroi de l’autorisation Lake Formation sur une table ou une base de données](grant-permissions-tables.md#grant-lf-table). 
Si vous recevez le message d'erreur suivant lorsque vous exécutez une `SELECT` requête dans Athena, cela est dû à la présence de lettres majuscules dans le nom de votre table ou dans le nom de vos colonnes dans la définition de votre table : « GENERIC\$1INTERNAL\$1ERROR : Get table request failed : com.amazonaws.services.glue.model. ValidationException: ressource de fédération non prise en charge - Noms de table ou de colonne non valides. » Assurez-vous que les noms des tables et des colonnes sont tous en minuscules.