

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.

# Intégration des tables Amazon S3 aux services AWS d'analyse
<a name="s3-tables-integrating-aws"></a>

Cette rubrique décrit les prérequis et les procédures nécessaires pour intégrer vos compartiments de table Amazon S3 aux services AWS d'analyse. Pour un aperçu du fonctionnement de l’intégration, consultez [Présentation de l’intégration de S3 Tables](s3-tables-integration-overview.md).

**Note**  
Cette intégration utilise le AWS Glue Data Catalog et peut entraîner des coûts de AWS Glue demande et de stockage. Pour plus d’informations, consultez [Tarification d’AWS Glue](https://aws.amazon.com/glue/pricing/).  
Des tarifs supplémentaires s'appliquent à l'exécution de requêtes sur des tables S3. Pour plus d’informations, consultez les informations de tarification du moteur de requêtes que vous utilisez.

## Conditions préalables à l’intégration
<a name="table-integration-prerequisites"></a>

Les conditions préalables suivantes sont requises pour intégrer des compartiments de tables aux services d' AWS analyse :
+ [Créez un compartiment de tables.](s3-tables-buckets-create.md)
+ Ajoutez les AWS Glue autorisations suivantes à votre principal Gestion des identités et des accès AWS (IAM) :
  + `glue:CreateCatalog`qui est nécessaire pour créer un catalogue `s3tablescatalog` fédéré dans le catalogue de données
  + `glue:PassConnection`accorde au principal appelant le droit de déléguer la création de `aws:s3tables` connexion au service Amazon S3.
+ [Effectuez une mise à jour vers la dernière version de AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com//cli/latest/userguide/getting-started-install.html#getting-started-install-instructions).

**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. »

## Intégration de compartiments de tables aux services d' AWS analyse
<a name="table-integration-procedures"></a>

Vous pouvez intégrer des compartiments de tables au catalogue de données et aux services AWS d'analyse à l'aide des contrôles d'accès IAM par défaut, ou éventuellement utiliser les contrôles d'accès de Lake Formation.

Lorsque vous effectuez une intégration à l'aide des contrôles d'accès IAM, vous avez besoin de privilèges IAM pour accéder aux compartiments de tables et aux tables Amazon S3, aux objets du catalogue de données et au moteur de requêtes que vous utilisez. Si vous choisissez d'intégrer à l'aide de Lake Formation, les contrôles d'accès IAM et les autorisations de Lake Formation déterminent l'accès aux ressources du catalogue de données. Reportez-vous au [https://docs.aws.amazon.com/lake-formation/latest/dg/create-s3-tables-catalog.html](https://docs.aws.amazon.com/lake-formation/latest/dg/create-s3-tables-catalog.html) pour en savoir plus sur l'intégration de Lake Formation.

Les sections suivantes décrivent comment utiliser la console de gestion Amazon S3 ou comment AWS CLI configurer l'intégration avec les contrôles d'accès IAM.

### Utilisation de la console S3
<a name="integrate-console"></a>

1. Ouvrez la console Amazon S3 à 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. Choisissez **Créer un compartiment de tables**.

   La page **Créer un compartiment de tables** s’ouvre.

1. Saisissez un **Nom du compartiment de table** et veillez à ce que la case **Activer l’intégration** soit cochée.

1. Choisissez **Créer un compartiment de tables**. Amazon S3 essaiera d’intégrer automatiquement vos compartiments de tables dans cette région.

### En utilisant le AWS CLI
<a name="integrate-cli"></a>

**Pour intégrer des compartiments de table aux contrôles d'accès IAM à l'aide du AWS CLI**

Les étapes suivantes montrent comment utiliser le AWS CLI pour intégrer des compartiments de table. Pour utiliser ces étapes, remplacez les `user input placeholders` par vos propres informations.

1. Créez un compartiment de tables.

   ```
   aws s3tables create-table-bucket \
   --region us-east-1 \
   --name amzn-s3-demo-table-bucket
   ```

1. Créez un fichier `catalog.json` contenant le catalogue qui suit :

   ```
   {
      "Name": "s3tablescatalog",
      "CatalogInput": {
         "FederatedCatalog": {
             "Identifier": "arn:aws:s3tables:us-east-1:111122223333:bucket/*",
             "ConnectionName": "aws:s3tables"
          },
          "CreateDatabaseDefaultPermissions":[
          {
                   "Principal": {
                       "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"
                   },
                   "Permissions": ["ALL"]
               }
          ],
          "CreateTableDefaultPermissions":[
          {
                   "Principal": {
                       "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS"
                   },
                   "Permissions": ["ALL"]
               }
          ],
          "AllowFullTableExternalDataAccess": "True"
      }
   }
   ```

   Créez le catalogue `s3tablescatalog` à l’aide de la ligne de commande suivante. La création de ce catalogue remplit le AWS Glue Data Catalog avec des objets correspondant à des compartiments de tables, à des espaces de noms et à des tables.

   ```
   aws glue create-catalog \
   --region us-east-1 \
   --cli-input-json file://catalog.json
   ```

1. Vérifiez que le `s3tablescatalog` catalogue a été ajouté à AWS Glue l'aide de la commande suivante :

   ```
   aws glue get-catalog --catalog-id s3tablescatalog
   ```

### Migration vers le processus d’intégration mis à jour
<a name="migrate-integrate-console"></a>

Le processus d'intégration des services d' AWS analyse a été mis à jour pour utiliser les autorisations IAM par défaut. Si vous avez déjà configuré l'intégration, vous pouvez continuer à utiliser votre intégration actuelle. Toutefois, si vous souhaitez modifier votre intégration existante pour utiliser les autorisations IAM à la place, consultez le [https://docs.aws.amazon.com/lake-formation/latest/dg/create-s3-tables-catalog.html](https://docs.aws.amazon.com/lake-formation/latest/dg/create-s3-tables-catalog.html). Vous pouvez également rétablir l'intégration pour supprimer votre configuration existante dans AWS Glue Data Catalog AWS Lake Formation et réexécuter l'intégration. Cela supprimera toutes les subventions existantes de Lake Formation et les autorisations d'accès associées au`s3tablescatalog`.

1. Ouvrez la AWS Lake Formation console sur [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/) et connectez-vous en tant qu'administrateur du lac de données. Pour plus d’informations sur la manière de créer un administrateur de lac de données, consultez [Création d’un administrateur de lac de données](https://docs.aws.amazon.com/lake-formation/latest/dg/initial-lf-config.html#create-data-lake-admin) dans le *Guide du développeur AWS Lake Formation *.

1. Supprimez le catalogue `s3tablescatalog` en procédant comme suit : 
   + Dans le volet de navigation de gauche, choisissez **Catalogues**. 
   + Sélectionnez le bouton d’option situé à côté du catalogue `s3tablescatalog` dans la liste **Catalogues**. Dans le menu **Actions**, sélectionnez **Delete (Supprimer)**.

1. Désenregistrez l’emplacement des données du catalogue `s3tablescatalog` en procédant comme suit :
   + Dans le volet de navigation de gauche, accédez à la section **Administration**, puis choisissez **Emplacements de lac de données**. 
   + Choisissez le bouton d’option en regard de l’emplacement du lac de données `s3tablescatalog`, par exemple `s3://tables:region:account-id:bucket/*`. 
   + Dans le menu **Actions**, choisissez **Supprimer**. 
   + Dans la boîte de dialogue de confirmation qui s’affiche, choisissez **Supprimer**. 

1. Maintenant que vous avez supprimé l'emplacement de votre `s3tablescatalog` catalogue et de votre lac de données, vous pouvez suivre les étapes pour [intégrer vos compartiments de tables aux services AWS d'analyse](#table-integration-procedures) en utilisant le processus d'intégration mis à jour. 

**Note**  
Si vous souhaitez utiliser des tables chiffrées SSE-KMS dans des services AWS d'analyse intégrés, le rôle que vous utilisez doit être autorisé à utiliser votre AWS KMS clé pour les opérations de chiffrement. Pour de plus amples informations, veuillez consulter [Octroi aux principaux IAM des autorisations leur permettant de travailler avec des tables chiffrées dans les services d'analyse intégrés AWS](s3-tables-kms-permissions.md#tables-kms-integration-permissions).

**Étapes suivantes**
+ [Création d’un espace de noms](s3-tables-namespace-create.md).
+ [Création d’une table](s3-tables-create.md).