

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Creación de un lago de datos a partir de una AWS CloudTrail fuente
<a name="getting-started-cloudtrail-tutorial"></a>

Este tutorial le guía por las acciones que debe realizar en la consola de Lake Formation para crear y cargar su primer lago de datos desde una AWS CloudTrail fuente.

**Pasos generales para crear un lago de datos**

1. Registre una ruta de Amazon Simple Storage Service (Amazon S3) como lago de datos.

1. Conceda a Lake Formation permisos para escribir en el Catálogo de datos y en las ubicaciones de Amazon S3 del lago de datos.

1. Cree una base de datos para organizar las tablas de metadatos en el Catálogo de datos.

1. Utilice un esquema para crear un flujo de trabajo. Ejecute el flujo de trabajo para incorporar datos de un origen de datos.

1. Configure sus permisos de Lake Formation para permitir que otros administren los datos del Catálogo de datos y del lago de datos.

1. Configure Amazon Athena para consultar los datos que haya importado en su lago de datos de Amazon S3.

1. Para algunos tipos de almacenes de datos, configure Amazon Redshift Spectrum para consultar los datos que importó a su lago de datos de Amazon S3.

**Topics**
+ [Destinatarios previstos](#cloudtrail-tut-personas)
+ [Requisitos previos](#cloudtrail-tut-prereqs)
+ [Paso 1: Crear un usuario de análisis de datos](#cloudtrail-tut-create-lf-user)
+ [Paso 2: Añadir permisos para leer los AWS CloudTrail registros a la función de flujo de trabajo](#cloudtrail-tut-grant-cloudtrail)
+ [Paso 3: Crear un bucket de Amazon S3 para el lago de datos](#cloudtrail-tut-create-bucket)
+ [Paso 4: Registrar una ruta de Amazon S3](#cloudtrail-tut-register)
+ [Paso 5: Conceder permisos de ubicación de datos](#cloudtrail-tut-data-location)
+ [Paso 6: Crear una base de datos en Data Catalog](#cloudtrail-tut-create-db)
+ [Paso 7: Conceder permisos de datos](#cloudtrail-tut-data-permissions)
+ [Paso 8: Utilizar un esquema para crear un flujo de trabajo.](#cloudtrail-tut-create-workflow)
+ [Paso 9: Ejecutar el flujo de trabajo](#cloudtrail-tut-run-workflow)
+ [Paso 10: Conceder SELECT en las tablas](#cloudtrail-tut-grant-table)
+ [Paso 11: consulte el lago de datos mediante Amazon Athena](#cloudtrail-tut-query)

## Destinatarios previstos
<a name="cloudtrail-tut-personas"></a>

En la siguiente tabla se enumeran los roles utilizadas en este tutorial para crear un lago de datos.


**Destinatarios previstos**  

| Rol | Description (Descripción) | 
| --- | --- | 
| Administrador de IAM | Tiene la política AWS gestionada:AdministratorAccess. Puede crear roles de IAM y buckets de Amazon S3. | 
| Administrador de lagos de datos | Usuario que puede acceder al Catálogo de datos, crear bases de datos y conceder permisos de Lake Formation a otros usuarios. Tiene menos permisos de IAM que el administrador de IAM, pero suficientes para administrar el lago de datos. | 
| Analista de datos | Usuario que puede ejecutar consultas en el lago de datos. Solo tiene permisos suficientes para ejecutar consultas. | 
| Rol de flujo de trabajo | Rol con las políticas de IAM necesarias para ejecutar un flujo de trabajo. Para obtener más información, consulte [(Opcional) Crear un rol de IAM para flujos de trabajo](initial-lf-config.md#iam-create-blueprint-role). | 

## Requisitos previos
<a name="cloudtrail-tut-prereqs"></a>

Antes de empezar:
+ Asegúrese de haber completado las tareas de [Configurar AWS Lake Formation](initial-lf-config.md).
+ Conozca la ubicación de sus CloudTrail registros.
+ Athena requiere que el analista de datos cree un bucket de Amazon S3 para almacenar los resultados de las consultas antes de usar Athena.

Se supone que está familiarizado con el AWS Identity and Access Management (IAM). Para obtener más información acerca de IAM, consulte la [Guía del usuario de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html).

## Paso 1: Crear un usuario de análisis de datos
<a name="cloudtrail-tut-create-lf-user"></a>

Este usuario tiene el conjunto mínimo de permisos para consultar el lago de datos.

1. Abra la consola de IAM en [https://console.aws.amazon.com/iam](https://console.aws.amazon.com/iam). Inicie sesión como el usuario administrador que creó en la política gestionada [Creación de un usuario con acceso administrativo](getting-started-setup.md#create-an-admin) o como usuario con la política `AdministratorAccess` AWS gestionada.

1. Cree una tabla con nombre `datalake_user` con la configuración siguiente:
   + Habilite Consola de administración de AWS el acceso.
   + Defina una contraseña y no solicite restablecerla.
   + Adjunte la política `AmazonAthenaFullAccess` AWS gestionada.
   + Vincule la siguiente política insertada. Llame a la política `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": "*"
             }
         ]
     }
     ```

## Paso 2: Añadir permisos para leer los AWS CloudTrail registros a la función de flujo de trabajo
<a name="cloudtrail-tut-grant-cloudtrail"></a>

1. Asocie la siguiente política insertada al rol `LakeFormationWorkflowRole`. La política otorga permiso para leer tus AWS CloudTrail registros. Llame a la política `DatalakeGetCloudTrail`.

   Para crear la función de `LakeFormationWorkflowRole`, consulte [(Opcional) Crear un rol de IAM para flujos de trabajo](initial-lf-config.md#iam-create-blueprint-role).
**importante**  
*<your-s3-cloudtrail-bucket>*Sustitúyala por la ubicación de tus CloudTrail datos en Amazon S3.

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

****  

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

------

1. Compruebe que haya tres políticas adjuntadas al rol.

## Paso 3: Crear un bucket de Amazon S3 para el lago de datos
<a name="cloudtrail-tut-create-bucket"></a>

Cree el bucket de Amazon S3 que será la ubicación raíz de su lago de datos.

1. Abra la consola Amazon S3 en [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)e inicie sesión como el usuario administrador que creó[Creación de un usuario con acceso administrativo](getting-started-setup.md#create-an-admin).

1. Selecciona **Crear depósito** y sigue el asistente para crear un depósito con el nombre`<yourName>-datalake-cloudtrail`, donde *<yourName>* aparecen tu inicial y apellidos. Por ejemplo: `jdoe-datalake-cloudtrail`.

   Para obtener instrucciones detalladas sobre la creación de un bucket de Amazon S3, consulte [Crear un bucket](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/create-bucket.html).

## Paso 4: Registrar una ruta de Amazon S3
<a name="cloudtrail-tut-register"></a>

Registre una ruta de Amazon S3 como ubicación raíz de su lago de datos.

1. Abra la consola de Lake Formation en [https://console.aws.amazon.com/lakeformation/](https://console.aws.amazon.com/lakeformation/). Inicie sesión como administrador del lago de datos.

1. En el panel de navegación, en **Registrar e ingerir**, elija las **Ubicaciones de los lagos de datos**.

1. Seleccione **Registrar ubicación** y, a continuación, **Examinar**. 

1. Seleccione el bucket `<yourName>-datalake-cloudtrail` que creó anteriormente, acepte el rol de IAM `AWSServiceRoleForLakeFormationDataAccess` predeterminado y, a continuación, elija **Registrar ubicación**.

   Para obtener más información sobre cómo registrar ubicaciones, consulte [Añadir una ubicación de Amazon S3 a su lago de datos](register-data-lake.md).

## Paso 5: Conceder permisos de ubicación de datos
<a name="cloudtrail-tut-data-location"></a>

Las entidades principales deben tener *permisos de ubicación de datos* en una ubicación de lago de datos para crear tablas o bases de datos del Catálogo de datos que apunten a esa ubicación. Debe conceder permisos de ubicación de datos al rol de IAM para los flujos de trabajo, de modo que el flujo de trabajo pueda escribir en el destino de la ingesta de datos.

1. En el panel de navegación, bajo **Permisos**, seleccione **Ubicaciones de datos**.

1. Elija **Conceder** y, en el cuadro de diálogo **Conceder permisos**, seleccione lo siguiente:

   1. En **Usuario de IAM y roles**, elija `LakeFormationWorkflowRole`.

   1. En **Ubicaciones de almacenamiento**, elija su bucket de `<yourName>-datalake-cloudtrail`.

1. Elija **Conceder**.

Para obtener más información sobre permisos de ubicación de datos, consulte [Underlying data access control](access-control-underlying-data.md#data-location-permissions).

## Paso 6: Crear una base de datos en Data Catalog
<a name="cloudtrail-tut-create-db"></a>

Las tablas de metadatos del Catálogo de datos de Lake Formation se almacenan en una base de datos.

1. En el panel de navegación, **Catálogo de datos**, elija **Tablas**.

1. Seleccione **Crear base de datos** y, en **Detalles de la base de datos**, introduzca el nombre `lakeformation_cloudtrail`.

1. Deje los demás campos en blanco y elija **Crear base de datos**.

## Paso 7: Conceder permisos de datos
<a name="cloudtrail-tut-data-permissions"></a>

Debe conceder permisos para crear tablas de metadatos en el Catálogo de datos. Como el flujo de trabajo se ejecutará con el rol `LakeFormationWorkflowRole`, debe conceder estos permisos al rol.

1. En la consola de Lake Formation, en el panel de navegación, en **Catálogo de datos**, seleccione **Bases de datos**. 

1. Elija la base de datos `lakeformation_cloudtrail` y, a continuación, en la lista desplegable **Acciones**, seleccione **Conceder** bajo el encabezado Permisos.

1. En el cuadro de diálogo **Conceder permisos de datos**, seleccione lo siguiente:

   1. En **Entidades principales**, **Usuario de IAM y roles**, elija `LakeFormationWorkflowRole`.

   1. En **Etiquetas LF o recursos de catálogo**, elija **Recursos de catálogo de datos con nombre**.

   1. En **Bases de datos**, debería ver que la base de datos `lakeformation_cloudtrail` ya está agregada.

   1. En **Permisos de base de datos**, seleccione **Crear tabla**, **Modificar** y **Borrar**, y desactive **Super** si está marcado.

1. Elija **Conceder**.

Para obtener más información sobre permisos de Lake Formation, consulte [Administrar los permisos de Lake Formation](managing-permissions.md).

## Paso 8: Utilizar un esquema para crear un flujo de trabajo.
<a name="cloudtrail-tut-create-workflow"></a>

Para leer los CloudTrail registros, entender su estructura y crear las tablas adecuadas en el catálogo de datos, necesitamos configurar un flujo de trabajo que consista en AWS Glue rastreadores, tareas, activadores y flujos de trabajo. Los esquemas de Lake Formation simplifican este proceso. 

El flujo de trabajo genera las tareas, los rastreadores y los activadores que descubren e ingieren datos en su lago de datos. Cree un flujo de trabajo basado en uno de los esquemas predefinidos de Lake Formation.

1. En la consola de Lake Formation, en el panel de navegación, elija **Esquemas** en **Ingesta** y, a continuación, **Usar esquema**.

1. En la página **Usar un esquema,** en **Tipo de esquema, elija**. **AWS CloudTrail**

1. En **Importar fuente**, selecciona una CloudTrail fuente y una fecha de inicio.

1. En **Destino de importación**, especifique estos parámetros:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/lake-formation/latest/dg/getting-started-cloudtrail-tutorial.html)

1. Para ver la frecuencia de la importación, seleccione **Ejecutar bajo demanda**.

1. En **Opciones de importación**, especifique estos parámetros:    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/lake-formation/latest/dg/getting-started-cloudtrail-tutorial.html)

1. Seleccione **Crear** y espere a que la consola informe de que el flujo de trabajo se ha creado correctamente.
**sugerencia**  
¿Ha recibido este mensaje de error?  
`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 es así, compruebe que ha sustituido *<account-id>* en la política integrada para el usuario administrador del lago de datos por un número de AWS cuenta válido.

## Paso 9: Ejecutar el flujo de trabajo
<a name="cloudtrail-tut-run-workflow"></a>

Como especificó que el flujo de trabajo es run-on-demand, debe iniciarlo manualmente.
+ En la página **Esquemas**, seleccione el flujo de trabajo `lakeformationcloudtrailtest` y, en el menú **Acciones**, elija **Iniciar**.

  A medida que se ejecuta el flujo de trabajo, puede ver su progreso en la columna **Estado de la última ejecución**. Pulse el botón de actualización de vez en cuando.

  El estado pasa de **EN EJECUCIÓN** a **Detectando**, **Importando** y **FINALIZADO**. 

  Cuando se complete el flujo de trabajo:
  + El Catálogo de datos tendrá nuevas tablas de metadatos.
  + Sus CloudTrail registros se incorporarán al lago de datos.

  Si se produce un error en el flujo de trabajo, haga lo siguiente:

  1. Seleccione el flujo de trabajo y, en el menú **Acciones**, elija **Ver gráfico**.

     El flujo de trabajo se abre en la consola de AWS Glue.

  1. Asegúrese de que se seleccione el flujo de trabajo y elija la pestaña **Historial**.

  1. En **Historial**, seleccione la ejecución más reciente y seleccione **Ver detalles de la ejecución**.

  1. Seleccione un trabajo o un rastreador fallidos en el gráfico dinámico (tiempo de ejecución) y revise el mensaje de error. Los nodos con errores aparecen en rojo o amarillo.

## Paso 10: Conceder SELECT en las tablas
<a name="cloudtrail-tut-grant-table"></a>

Debe conceder el permiso `SELECT` a las nuevas tablas del Catálogo de datos para que el analista de datos pueda consultar los datos a los que apuntan las tablas.

**nota**  
Un flujo de trabajo concede automáticamente el permiso `SELECT` sobre las tablas que crea al usuario que lo ejecutó. Dado que el administrador del lago de datos ejecutó este flujo de trabajo, debe conceder `SELECT` al analista de datos.

1. En la consola de Lake Formation, en el panel de navegación, en **Catálogo de datos**, seleccione **Bases de datos**. 

1. Elija la base de datos `lakeformation_cloudtrail` y, a continuación, en la lista desplegable **Acciones**, seleccione **Conceder** bajo el encabezado Permisos.

1. En el cuadro de diálogo **Conceder permisos de datos**, seleccione lo siguiente:

   1. En **Entidades principales**, **Usuario de IAM y roles**, elija `datalake_user`.

   1. En **Etiquetas LF o recursos del catálogo**, elija **Recursos de Catálogo de datos con nombre**.

   1. En **Bases de datos**, la base de datos `lakeformation_cloudtrail` ya debería estar seleccionada.

   1. Para **Tablas**, elija `cloudtrailtest-cloudtrail`.

   1. En **Permisos de tabla y columna**, elija **Seleccionar**.

1. Elija **Conceder**.

**El paso siguiente se efectúa como analista de datos.**

## Paso 11: consulte el lago de datos mediante Amazon Athena
<a name="cloudtrail-tut-query"></a>

Utilice la Amazon Athena consola para consultar los CloudTrail datos de su lago de datos.

1. Abra la consola de Athena en [https://console.aws.amazon.com/athena/](https://console.aws.amazon.com/athena/home)e inicie sesión como analista de datos, usuario. `datalake_user`

1. Si es necesario, elija **Comenzar** para continuar con el editor de consultas de Athena.

1. Para **Origen de datos**, elija **AwsDataCatalog**.

1. En **Database (Base de datos)**, elija `lakeformation_cloudtrail`.

   Se rellena la lista de **Tablas**.

1. En el menú desplegable (3 puntos en horizontal) situado junto a la tabla `cloudtrailtest-cloudtrail`, seleccione **Vista previa de la tabla** y, a continuación, seleccione **Ejecutar**.

   La consulta se ejecuta y muestra 10 filas de datos.

   Si no ha utilizado Athena antes, primero debe configurar una ubicación de Amazon S3 en la consola de Athena para almacenar los resultados de las consultas. El `datalake_user` debe disponer de los permisos necesarios para acceder al bucket de Amazon S3 que elija.

**nota**  
Ahora que ha completado el tutorial, conceda permisos de datos y permisos de ubicación de datos a las entidades principales de su organización.