

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.

# Création d'un lac de données à partir d'une AWS CloudTrail source
<a name="getting-started-cloudtrail-tutorial"></a>

Ce didacticiel vous explique les actions à effectuer sur la console Lake Formation pour créer et charger votre premier lac de données à partir d'une AWS CloudTrail source.

**Étapes de haut niveau pour créer un lac de données**

1. Enregistrez un chemin Amazon Simple Storage Service (Amazon S3) en tant que lac de données.

1. Accordez à Lake Formation l'autorisation d'écrire dans le catalogue de données et dans les emplacements Amazon S3 du lac de données.

1. Créez une base de données pour organiser les tables de métadonnées dans le catalogue de données.

1. Utilisez un plan pour créer un flux de travail. Exécutez le flux de travail pour ingérer les données d'une source de données.

1. Configurez vos autorisations Lake Formation pour permettre à d'autres personnes de gérer les données du catalogue de données et du lac de données.

1. Configurez Amazon Athena pour interroger les données que vous avez importées dans votre lac de données Amazon S3.

1. Pour certains types de banques de données, configurez Amazon Redshift Spectrum pour interroger les données que vous avez importées dans votre lac de données Amazon S3.

**Topics**
+ [Public visé](#cloudtrail-tut-personas)
+ [Conditions préalables](#cloudtrail-tut-prereqs)
+ [Étape 1 : créer un utilisateur d'analyste de données](#cloudtrail-tut-create-lf-user)
+ [Étape 2 : ajouter des autorisations pour lire les AWS CloudTrail journaux au rôle de flux de travail](#cloudtrail-tut-grant-cloudtrail)
+ [Étape 3 : créer un compartiment Amazon S3 pour le lac de données](#cloudtrail-tut-create-bucket)
+ [Étape 4 : enregistrer un chemin Amazon S3](#cloudtrail-tut-register)
+ [Étape 5 : accorder des autorisations de localisation des données](#cloudtrail-tut-data-location)
+ [Étape 6 : Création d'une base de données dans le catalogue de données](#cloudtrail-tut-create-db)
+ [Étape 7 : Accorder des autorisations de données](#cloudtrail-tut-data-permissions)
+ [Étape 8 : Utiliser un plan pour créer un flux de travail](#cloudtrail-tut-create-workflow)
+ [Étape 9 : Exécuter le flux de travail](#cloudtrail-tut-run-workflow)
+ [Étape 10 : Autorisez SELECT sur les tables](#cloudtrail-tut-grant-table)
+ [Étape 11 : Interrogez le lac de données à l'aide de Amazon Athena](#cloudtrail-tut-query)

## Public visé
<a name="cloudtrail-tut-personas"></a>

Le tableau suivant répertorie les rôles utilisés dans ce didacticiel pour créer un lac de données.


**Public visé**  

| Role | Description | 
| --- | --- | 
| Administrateur IAM | Possède la politique AWS gérée :AdministratorAccess. Peut créer des rôles IAM et des compartiments Amazon S3. | 
| Administrateur du lac de données | Utilisateur autorisé à accéder au catalogue de données, à créer des bases de données et à accorder des autorisations Lake Formation à d'autres utilisateurs. Dispose de moins d'autorisations IAM que l'administrateur IAM, mais suffisamment pour administrer le lac de données. | 
| Analyste des données | Utilisateur capable d'exécuter des requêtes sur le lac de données. Dispose uniquement des autorisations suffisantes pour exécuter des requêtes. | 
| Rôle du flux de travail | Rôle doté des politiques IAM requises pour exécuter un flux de travail. Pour de plus amples informations, veuillez consulter [(Facultatif) Créez un rôle IAM pour les flux de travail](initial-lf-config.md#iam-create-blueprint-role). | 

## Conditions préalables
<a name="cloudtrail-tut-prereqs"></a>

Avant de commencer :
+ Assurez-vous d'avoir terminé les tâches dans[Configurez AWS Lake Formation](initial-lf-config.md).
+ Connaissez l'emplacement de vos CloudTrail journaux.
+ Athena a besoin du personnage d'analyste de données pour créer un compartiment Amazon S3 pour stocker les résultats des requêtes avant d'utiliser Athena.

La connaissance de Gestion des identités et des accès AWS (IAM) est supposée. Pour plus d'informations sur IAM, consultez le guide de l'[utilisateur IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html).

## Étape 1 : créer un utilisateur d'analyste de données
<a name="cloudtrail-tut-create-lf-user"></a>

Cet utilisateur dispose du minimum d'autorisations pour interroger le lac de données.

1. Ouvrez la console IAM à l’adresse [https://console.aws.amazon.com/iam](https://console.aws.amazon.com/iam). Connectez-vous en tant qu'utilisateur administrateur que vous avez créé [Création d’un utilisateur doté d’un accès administratif](getting-started-setup.md#create-an-admin) ou en tant qu'utilisateur avec la politique `AdministratorAccess` AWS gérée.

1. Créez un utilisateur nommé `datalake_user` avec les paramètres suivants :
   + Activez AWS Management Console l'accès.
   + Définissez un mot de passe et n'exigez pas de réinitialisation du mot de passe.
   + Joignez la politique `AmazonAthenaFullAccess` AWS gérée.
   + Joignez la politique intégrée suivante. Nommez la stratégie `DatalakeUserBasic`.

     ```
     {
         "Version": "2012-10-17",		 	 	 
         "Statement": [
             {
                 "Effect": "Allow",
                 "Action": [
                     "lakeformation:GetDataAccess",
                     "glue:GetTable",
                     "glue:GetTables",
                     "glue:SearchTables",
                     "glue:GetDatabase",
                     "glue:GetDatabases",
                     "glue:GetPartitions",
                     "lakeformation:GetResourceLFTags",
                     "lakeformation:ListLFTags",
                     "lakeformation:GetLFTag",
                     "lakeformation:SearchTablesByLFTags",
                     "lakeformation:SearchDatabasesByLFTags"                
                ],
                 "Resource": "*"
             }
         ]
     }
     ```

## Étape 2 : ajouter des autorisations pour lire les AWS CloudTrail journaux au rôle de flux de travail
<a name="cloudtrail-tut-grant-cloudtrail"></a>

1. Associez la politique intégrée suivante au rôle`LakeFormationWorkflowRole`. La politique autorise la lecture de vos AWS CloudTrail journaux. Nommez la stratégie `DatalakeGetCloudTrail`.

   Pour créer le rôle `LakeFormationWorkflowRole`, consultez [(Facultatif) Créez un rôle IAM pour les flux de travail](initial-lf-config.md#iam-create-blueprint-role).
**Important**  
Remplacez *<your-s3-cloudtrail-bucket>* par l'emplacement Amazon S3 de vos CloudTrail données.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": "s3:GetObject",
               "Resource": ["arn:aws:s3:::<your-s3-cloudtrail-bucket>/*"]
           }
       ]
   }
   ```

------

1. Vérifiez que trois politiques sont associées au rôle.

## Étape 3 : créer un compartiment Amazon S3 pour le lac de données
<a name="cloudtrail-tut-create-bucket"></a>

Créez le compartiment Amazon S3 qui doit être l'emplacement racine de votre lac de données.

1. Ouvrez la console Amazon S3 à [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)et connectez-vous en tant qu'utilisateur administrateur dans lequel vous l'avez créée[Création d’un utilisateur doté d’un accès administratif](getting-started-setup.md#create-an-admin).

1. Choisissez **Create bucket**, puis passez par l'assistant pour créer un bucket nommé`<yourName>-datalake-cloudtrail`, où *<yourName>* sont votre prénom et votre nom de famille. Par exemple : `jdoe-datalake-cloudtrail`.

   Pour obtenir des instructions détaillées sur la création d'un compartiment Amazon S3, consultez [Création d'un compartiment](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-bucket.html).

## Étape 4 : enregistrer un chemin Amazon S3
<a name="cloudtrail-tut-register"></a>

Enregistrez un chemin Amazon S3 comme emplacement racine de votre lac de données.

1. Ouvrez la console Lake Formation à l'adresse [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/). Connectez-vous en tant qu'administrateur du lac de données.

1. Dans le volet de navigation, sous **Enregistrer et ingérer**, sélectionnez **Data lake locations**.

1. Choisissez **Enregistrer l'emplacement**, puis **Parcourir**. 

1. Sélectionnez le `<yourName>-datalake-cloudtrail` bucket que vous avez créé précédemment, acceptez le rôle IAM par défaut`AWSServiceRoleForLakeFormationDataAccess`, puis choisissez **Enregistrer l'emplacement**.

   Pour plus d'informations sur l'enregistrement des points de vente, consultez[Ajouter un emplacement Amazon S3 à votre lac de données](register-data-lake.md).

## Étape 5 : accorder des autorisations de localisation des données
<a name="cloudtrail-tut-data-location"></a>

Les principaux doivent disposer d'*autorisations de localisation des données* sur l'emplacement d'un lac de données pour créer des tables de catalogue de données ou des bases de données pointant vers cet emplacement. Vous devez accorder des autorisations de localisation des données au rôle IAM pour les flux de travail afin que le flux de travail puisse écrire sur la destination d'ingestion des données.

1. Dans le volet de navigation, sous **Autorisations**, sélectionnez **Emplacements des données**.

1. Choisissez **Grant**, puis dans la boîte de dialogue **Accorder les autorisations**, effectuez les sélections suivantes :

   1. Pour l'**utilisateur et les rôles IAM**, sélectionnez`LakeFormationWorkflowRole`.

   1. Pour les **emplacements de stockage**, choisissez votre `<yourName>-datalake-cloudtrail` compartiment.

1. Choisissez **Accorder**.

Pour plus d'informations sur les autorisations de localisation des données, consultez[Underlying data access control](access-control-underlying-data.md#data-location-permissions).

## Étape 6 : Création d'une base de données dans le catalogue de données
<a name="cloudtrail-tut-create-db"></a>

Les tables de métadonnées du Lake Formation Data Catalog sont stockées dans une base de données.

1. Dans le volet de navigation, sous **Catalogue de données**, sélectionnez **Bases de données**.

1. Choisissez **Créer une base de données**, puis entrez le nom sous **Détails de la base** de données`lakeformation_cloudtrail`.

1. Laissez les autres champs vides, puis choisissez **Créer une base de données**.

## Étape 7 : Accorder des autorisations de données
<a name="cloudtrail-tut-data-permissions"></a>

Vous devez accorder des autorisations pour créer des tables de métadonnées dans le catalogue de données. Étant donné que le flux de travail sera exécuté avec le rôle`LakeFormationWorkflowRole`, vous devez accorder ces autorisations au rôle.

1. Dans la console Lake Formation, dans le volet de navigation, sous **Catalogue de données**, sélectionnez **Databases**. 

1. Choisissez la `lakeformation_cloudtrail` base de données, puis, dans la liste déroulante **Actions**, choisissez **Grant** sous le titre Permissions.

1. Dans la boîte de dialogue **Accorder les autorisations relatives aux données**, effectuez les sélections suivantes :

   1. Sous **Principaux**, pour **Utilisateur et rôles IAM, sélectionnez**. `LakeFormationWorkflowRole`

   1. Sous **Balises LF ou ressources de catalogue**, choisissez **Ressources de catalogue de données nommées**.

   1. Pour les **bases de données**, vous devriez voir que la `lakeformation_cloudtrail` base de données est déjà ajoutée.

   1. Sous **Autorisations de base** de données, sélectionnez **Créer une table**, **Modifier** **et Supprimer**, puis désélectionnez **Super** si cette option est sélectionnée.

1. Choisissez **Accorder**.

Pour plus d'informations sur l'octroi des autorisations de Lake Formation, consultez[Gestion des autorisations relatives à Lake Formation](managing-permissions.md).

## Étape 8 : Utiliser un plan pour créer un flux de travail
<a name="cloudtrail-tut-create-workflow"></a>

Afin de lire les CloudTrail journaux, de comprendre leur structure et de créer les tables appropriées dans le catalogue de données, nous devons configurer un flux de travail composé d'un robot d'AWS Glueexploration, de tâches, de déclencheurs et de flux de travail. Les plans de Lake Formation simplifient ce processus. 

Le flux de travail génère les tâches, les robots d'exploration et les déclencheurs qui découvrent et ingèrent les données dans votre lac de données. Vous créez un flux de travail basé sur l'un des plans prédéfinis de Lake Formation.

1. Dans la console Lake Formation, dans le volet de navigation, choisissez **Blueprints** sous **Ingestion**, puis choisissez **Use blueprint**.

1. Sur la page **Utiliser un plan**, sous **Type de plan, sélectionnez**. **AWS CloudTrail**

1. Sous **Importer la source**, choisissez une CloudTrail source et une date de début.

1. Sous **Cible d'importation**, spécifiez les paramètres suivants :    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/lake-formation/latest/dg/getting-started-cloudtrail-tutorial.html)

1. Pour la fréquence d'importation, choisissez **Exécuter à la demande**.

1. Sous **Options d'importation**, spécifiez les paramètres suivants :    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/lake-formation/latest/dg/getting-started-cloudtrail-tutorial.html)

1. Choisissez **Créer** et attendez que la console indique que le flux de travail a été créé avec succès.
**Astuce**  
Avez-vous reçu le message d'erreur suivant ?  
`User: arn:aws:iam::<account-id>:user/<datalake_administrator_user> is not authorized to perform: iam:PassRole on resource:arn:aws:iam::<account-id>:role/LakeFormationWorkflowRole...`  
Si tel est le cas, vérifiez que vous avez remplacé *<account-id>* dans la politique en ligne l'utilisateur administrateur du lac de données par un numéro de AWS compte valide.

## Étape 9 : Exécuter le flux de travail
<a name="cloudtrail-tut-run-workflow"></a>

Comme vous avez indiqué que le flux de travail est le cas run-on-demand, vous devez le démarrer manuellement.
+ Sur la page **Blueprints**, sélectionnez le flux de travail`lakeformationcloudtrailtest`, puis dans le menu **Actions**, sélectionnez **Démarrer**.

  Au fur et à mesure que le flux de travail s'exécute, vous pouvez voir sa progression dans la colonne **État de la dernière exécution**. Cliquez sur le bouton d'actualisation de temps en temps.

  Le statut passe de « **EN COURS** » à « **Découverte** », puis « **Importation** », puis « **TERMINÉ** ». 

  Lorsque le flux de travail est terminé :
  + Le catalogue de données comportera de nouvelles tables de métadonnées.
  + Vos CloudTrail journaux seront ingérés dans le lac de données.

  Si le flux de travail échoue, procédez comme suit :

  1. Sélectionnez le flux de travail, puis dans le menu **Actions**, choisissez **Afficher le graphique**.

     Le flux de travail s'ouvre dans la AWS Glue console.

  1. Assurez-vous que le flux de travail est sélectionné, puis sélectionnez l'onglet **History (Historique)**.

  1. Sous **Historique**, sélectionnez l'exécution la plus récente et choisissez **Afficher les détails de la course**.

  1. Sélectionnez une tâche ou un robot d'exploration ayant échoué dans le graphique dynamique (d'exécution) et consultez le message d'erreur. Les nœuds défaillants sont rouges ou jaunes.

## Étape 10 : Autorisez SELECT sur les tables
<a name="cloudtrail-tut-grant-table"></a>

Vous devez accorder l'`SELECT`autorisation sur les nouvelles tables du catalogue de données afin que l'analyste de données puisse interroger les données vers lesquelles pointent les tables.

**Note**  
Un flux de travail accorde automatiquement l'`SELECT`autorisation sur les tables qu'il crée à l'utilisateur qui l'a exécuté. Étant donné que l'administrateur du lac de données a exécuté ce flux de travail, vous devez accorder une autorisation `SELECT` à l'analyste de données.

1. Dans la console Lake Formation, dans le volet de navigation, sous **Catalogue de données**, sélectionnez **Databases**. 

1. Choisissez la `lakeformation_cloudtrail` base de données, puis, dans la liste déroulante **Actions**, choisissez **Grant** sous le titre Permissions.

1. Dans la boîte de dialogue **Accorder les autorisations relatives aux données**, effectuez les sélections suivantes :

   1. Sous **Principaux**, pour **Utilisateur et rôles IAM, sélectionnez**. `datalake_user`

   1. Sous **Balises LF ou ressources de catalogue, sélectionnez Ressources** de **catalogue de données nommées**.

   1. Pour les **bases de données**, la `lakeformation_cloudtrail` base de données doit déjà être sélectionnée.

   1. Pour **Tables**, sélectionnez`cloudtrailtest-cloudtrail`.

   1. Sous **Autorisations relatives aux tables et aux colonnes**, choisissez **Sélectionner**.

1. Choisissez **Accorder**.

**L'étape suivante est exécutée en tant qu'analyste de données.**

## Étape 11 : Interrogez le lac de données à l'aide de Amazon Athena
<a name="cloudtrail-tut-query"></a>

Utilisez la Amazon Athena console pour interroger les CloudTrail données de votre lac de données.

1. Ouvrez la console Athena à [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home)et connectez-vous en tant qu'analyste de données, utilisateur. `datalake_user`

1. Si nécessaire, choisissez **Get Started pour passer** à l'éditeur de requêtes Athena.

1. Pour **Data source (Source de données)**, choisissez **AwsDataCatalog**.

1. Pour **Database (Base de données)**, sélectionnez `lakeformation_cloudtrail`.

   La liste **des tables** s'affiche.

1. Dans le menu déroulant (3 points disposés horizontalement) à côté du tableau`cloudtrailtest-cloudtrail`, choisissez **Aperçu du tableau**, puis **Exécuter**.

   La requête s'exécute et affiche 10 lignes de données.

   Si vous n'avez jamais utilisé Athena auparavant, vous devez d'abord configurer un emplacement Amazon S3 dans la console Athena pour stocker les résultats de la requête. Ils `datalake_user` doivent disposer des autorisations nécessaires pour accéder au compartiment Amazon S3 de votre choix.

**Note**  
Maintenant que vous avez terminé le didacticiel, accordez des autorisations relatives aux données et des autorisations de localisation des données aux principaux responsables de votre organisation.