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.
Configuración de permisos para formatos de almacenamiento de tablas abiertas en Lake Formation
AWS Lake Formation permite gestionar los permisos de acceso para los formatos Open Table (OTFs), como Apache Iceberg, Apache
nota
AWS los servicios de análisis no admiten todos los formatos de tablas transaccionales. Para obtener más información, consulte Trabajar con otros AWS servicios. Este tutorial describe manualmente la creación de una nueva base de datos y una tabla en el catálogo de datos utilizando únicamente AWS Glue trabajos.
Este tutorial incluye una AWS CloudFormation plantilla para una configuración rápida. Puede revisarla y personalizarla para adaptarla a sus necesidades.
Temas
Destinatarios previstos
Este tutorial está dirigido a IAM administradores, administradores de lagos de datos y analistas de negocios. En la tabla siguiente se enumeran los roles utilizados en este tutorial para crear una tabla gobernada con Lake Formation.
Rol | Descripción |
---|---|
IAMAdministrador | Un usuario que puede crear IAM usuarios y roles y buckets de Amazon S3. Tiene la política AdministratorAccess AWS administrada. |
Administrador de lago 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 IAM permisos que el IAM administrador, pero suficientes para administrar el lago de datos. |
Analista de negocios | Usuario que puede ejecutar consultas en el lago de datos. Tiene permisos para ejecutar consultas. |
Requisitos previos
Antes de empezar este tutorial, debe disponer de una en la Cuenta de AWS que pueda iniciar sesión como usuario con los permisos correctos. Para obtener más información, consulte Inscríbase en una Cuenta de AWS y Creación de un usuario con acceso administrativo.
En el tutorial se presupone que está familiarizado con las IAM funciones y las políticas. Para obtener información al respectoIAM, consulte la Guía IAM del usuario.
Debe configurar los siguientes AWS recursos para completar este tutorial:
Administrador de lago de datos
Configuración del lago de datos de Lake Formation
Motor Amazon Athena, versión 3
Para crear un administrador de lago de datos
-
Inicie sesión en la consola de Lake Formation https://console.aws.amazon.com/lakeformation/
como usuario administrador. Creará recursos en la región EE.UU. Este (Norte de Virginia) para este tutorial. -
Desde la consola de Lake Formation, en Permisos del panel de navegación, seleccione Roles y tareas administrativas.
-
Seleccione Elegir administradores en Administradores del lago de datos.
-
En la ventana emergente, en Administrar administradores de lagos de datos, en IAMUsuarios y roles, elija usuario IAM administrador.
-
Seleccione Guardar.
Para habilitar la configuración del lago de datos
-
Abra la consola de Lake Formation en https://console.aws.amazon.com/lakeformation/
. En el panel de navegación, en Catálogo de datos, seleccione Configuración. Desmarque lo siguiente: Utilice únicamente el control de IAM acceso para las bases de datos nuevas.
-
Utilice únicamente el control de IAM acceso para las tablas nuevas de las bases de datos nuevas.
-
En Configuración de la versión entre cuentas, seleccione Versión 3 como versión entre cuentas.
-
Seleccione Guardar.
Para actualizar el motor Amazon Athena a la versión 3
-
Abra la consola Athena en. https://console.aws.amazon.com/athena/
-
Seleccione el grupo de trabajo y elija el principal.
-
Asegúrese de que el grupo de trabajo tenga una versión mínima de 3. Si no es así, edite el grupo de trabajo, elija Manual en Actualizar el motor de consultas y seleccione la versión 3.
Seleccione Guardar cambios.
Paso 1: Aprovisionar recursos
En esta sección se muestra cómo configurar los AWS recursos mediante una AWS CloudFormation plantilla.
Para crear sus recursos mediante AWS CloudFormation una plantilla
Inicie sesión en la AWS CloudFormation consola en https://console.aws.amazon.com/cloudformation
como IAM administrador de la región EE.UU. Este (Virginia del Norte). Seleccione Lanzar pila
. Seleccione Siguiente en la pantalla Crear pila.
Introduzca un Nombre de pila.
Elija Next (Siguiente).
En la página siguiente, seleccione Siguiente.
Revisa los detalles en la última página y selecciona Reconozco que AWS CloudFormation podría crear IAM recursos.
Seleccione Crear.
La creación de la pila puede llevar hasta dos minutos.
El lanzamiento de la pila de formación de nube crea los recursos siguientes:
-
lf-otf-datalake-123456789012 — Depósito de Amazon S3 para almacenar datos
nota
El identificador de cuenta adjunto al nombre del bucket de Amazon S3 se sustituye por el identificador de su cuenta.
-
lf-otf-tutorial-123456789012 — Depósito de Amazon S3 para almacenar los resultados de las consultas y los scripts de trabajo AWS Glue
AWS Glue lficebergdb: base de datos Iceberg
lfhudidb — Base de datos AWS Glue Hudi
-
lfdeltadb — Base de datos Delta AWS Glue
native-iceberg-create — AWS Glue trabajo que crea una tabla de iceberg en el catálogo de datos
native-hudi-create — AWS Glue trabajo que crea una tabla Hudi en el catálogo de datos
-
native-delta-create — AWS Glue trabajo que crea una tabla Delta en el catálogo de datos
LF- OTF - GlueServiceRole — IAM rol al que se transfiere AWS Glue para ejecutar los trabajos. Este rol incluye las políticas necesarias para acceder a los recursos, como el Catálogo de datos, el bucket de Amazon S3, etc.
IAMFunción LF- OTF - RegisterRole — para registrar la ubicación de Amazon S3 en Lake Formation. Este rol lleva
LF-Data-Lake-Storage-Policy
asociada.lf-consumer-analystuser — IAM el usuario consulta los datos utilizando Athena
-
lf-consumer-analystuser-credentials — Contraseña del usuario analista de datos almacenada en AWS Secrets Manager
Una vez finalizada la creación de la pila, vaya a la pestaña de resultados y anote los valores de:
AthenaQueryResultLocation — Ubicación de Amazon S3 para el resultado de la consulta de Athena
BusinessAnalystUserCredentials — Contraseña para el usuario analista de datos
Para recuperar el valor de la contraseña:
Elija el valor de
lf-consumer-analystuser-credentials
accediendo a la consola de Secrets Manager.En la sección Valor secreto, seleccione Recuperar valor secreto.
Anote el valor secreto de la contraseña.
Paso 2: Configurar los permisos para una tabla de Iceberg
En esta sección, aprenderá a crear una tabla de iceberg en AWS Glue Data Catalog, configurar permisos de datos y consultar datos con Amazon Athena. AWS Lake Formation
Creación de una tabla de Iceberg
En este paso, ejecutará un AWS Glue trabajo que creará una tabla de transacciones de Iceberg en el catálogo de datos.
-
Abra el icono AWS Glue la consola se https://console.aws.amazon.com/glue/
encuentra en la región EE.UU. Este (Norte de Virginia) como usuario administrador del lago de datos. -
En el panel de navegación izquierdo, seleccione trabajos.
-
Seleccione
native-iceberg-create
. -
En Acciones, seleccione Editar trabajo.
-
En Detalles del trabajo, expanda Propiedades avanzadas y active la casilla situada junto a Usar AWS Glue Data Catalog como metaalmacén de Hive para añadir los metadatos de la tabla en. AWS Glue Data Catalog Esto especifica AWS Glue Data Catalog el metaalmacén de los recursos del catálogo de datos utilizados en el trabajo y permite que los permisos de Lake Formation se apliquen más adelante a los recursos del catálogo.
Seleccione Guardar.
-
Elija Ejecutar. Puede ver el estado del trabajo mientras se ejecuta.
Para obtener más información sobre los AWS Glue trabajos, consulte Trabajar con trabajos en la AWS Glue consola en la Guía para AWS Glue desarrolladores.
Este trabajo crea una tabla de Iceberg de nombre
product
en la base de datoslficebergdb
. Verifique la tabla de productos en la consola de Lake Formation.
Para registrar la ubicación de los datos con Lake Formation
A continuación, registre una ruta de Amazon S3 como ubicación de su lago de datos.
-
Abra la consola de Lake Formation en https://console.aws.amazon.com/lakeformation/
como usuario administrador del lago de datos. En el panel de navegación, en Registrar e ingerir, seleccione Ubicación de los datos.
En la parte superior derecha de la consola, seleccione Registrar ubicación.
En la página Registrar ubicación, introduzca:
-
Ruta de Amazon S3: seleccione Examinar y elija
lf-otf-datalake-123456789012
. Haga clic en la flecha derecha (>) junto a la ubicación raíz de Amazon S3 para ir a la ubicacións3/buckets/lf-otf-datalake-123456789012/transactionaldata/native-iceberg
. -
IAMrol: elija
LF-OTF-RegisterRole
como IAM rol. Seleccione Registrar ubicación.
Para obtener más información sobre el registro de una ubicación de datos en Lake Formation, consulte Añadir una ubicación de Amazon S3 a su lago de datos.
-
Para conceder permisos a Lake Formation en la tabla de Iceberg
En este paso, concederemos permisos de lago de datos al usuario analista de negocios.
En Permisos del lago de datos, seleccione Conceder.
En la pantalla Otorgar permisos de datos, elija IAMusuarios y roles.
-
Seleccione
lf-consumer-analystuser
en la lista desplegable. Seleccione un recurso de Catálogo de datos con nombre.
En Bases de datos, seleccione
lficebergdb
.En Tablas, seleccione
product
.A continuación, puede conceder el acceso basado en columnas especificando las columnas.
En Permisos de tabla, marque Seleccionar.
En Permisos de datos, seleccione Acceso basado en columnas e Incluir columnas.
Seleccione las columnas
product_name
,price
ycategory
.Elija Conceder.
Para consultar la tabla de Iceberg con Athena
Ahora puede empezar a consultar la tabla de Iceberg que creó con Athena. Si es la primera vez que ejecuta consultas en Athena, debe configurar una ubicación de resultados de consulta. Para obtener más información, consulte Especificación de una ubicación de resultados de consulta.
Cierre sesión como usuario administrador del lago de datos e inicie sesión como
lf-consumer-analystuser
en la región EE.UU. Este (Virginia del Norte) con la contraseña indicada anteriormente en el AWS CloudFormation resultado.Abra la consola Athena en https://console.aws.amazon.com/athena/
. Elija Configuración y seleccione Administrar.
En el cuadro Ubicación del resultado de la consulta, introduzca la ruta al depósito que creó en AWS CloudFormation los resultados. Copie el valor de
AthenaQueryResultLocation
(s3://lf-otf-tutorial-123456789012/athena-results/) y seleccione Guardar.Ejecute la consulta siguiente para obtener una vista previa de los 10 registros almacenados en la tabla de Iceberg:
select * from lficebergdb.product limit 10;
Para obtener más información sobre la consulta de tablas de Iceberg con Athena, vaya a Consulta de tablas de Iceberg en la Guía del usuario de Amazon Athena.
Paso 3: Configurar los permisos para una tabla de Hudi
En esta sección, aprenderá a crear una tabla de Hudi en AWS Glue Data Catalog, a configurar los permisos de datos y a consultar datos con Amazon Athena. AWS Lake Formation
Para crear una tabla de Hudi
En este paso, ejecutará un AWS Glue trabajo para crear una tabla transaccional de Hudi en el catálogo de datos.
-
Inicie sesión en el AWS Glue consola https://console.aws.amazon.com/glue/
en la región EE.UU. Este (Norte de Virginia) como usuario administrador del lago de datos.
-
En el panel de navegación izquierdo, seleccione trabajos.
-
Seleccione
native-hudi-create
. -
En Acciones, seleccione Editar trabajo.
-
En Detalles del trabajo, expanda Propiedades avanzadas y active la casilla situada junto a Usar AWS Glue Data Catalog como metaalmacén de Hive para añadir los metadatos de la tabla en. AWS Glue Data Catalog Esto especifica AWS Glue Data Catalog el metaalmacén de los recursos del catálogo de datos utilizados en el trabajo y permite que los permisos de Lake Formation se apliquen más adelante a los recursos del catálogo.
Seleccione Guardar.
-
Elija Ejecutar. Puede ver el estado del trabajo mientras se ejecuta.
Para obtener más información sobre los AWS Glue trabajos, consulte Trabajar con trabajos en la AWS Glue consola en la Guía para AWS Glue desarrolladores.
Este trabajo crea una tabla de Hudi (vaca) en la base de datos: lfhudidb. Verifique la tabla
product
en la consola de Lake Formation.
Para registrar la ubicación de los datos con Lake Formation
A continuación, registre una ruta de Amazon S3 como ubicación raíz de su lago de datos.
-
Inicie sesión en la consola de Lake Formation https://console.aws.amazon.com/lakeformation/
como usuario administrador del lago de datos. En el panel de navegación, en Registrar e ingerir, seleccione Ubicación de los datos.
En la parte superior derecha de la consola, seleccione Registrar ubicación.
En la página Registrar ubicación, introduzca:
-
Ruta de Amazon S3: seleccione Examinar y elija
lf-otf-datalake-123456789012
. Haga clic en la flecha derecha (>) junto a la ubicación raíz de Amazon S3 para ir a la ubicacións3/buckets/lf-otf-datalake-123456789012/transactionaldata/native-hudi
. -
IAMrol: elija
LF-OTF-RegisterRole
como IAM rol. Seleccione Registrar ubicación.
-
Para conceder permisos de lago de datos en la tabla de Hudi
En este paso, concederemos permisos de lago de datos al usuario analista de negocios.
En Permisos del lago de datos, seleccione Conceder.
En la pantalla Otorgar permisos de datos, elija IAMusuarios y roles.
-
lf-consumer-analystuser
en el menú desplegable. Seleccione un recurso de Catálogo de datos con nombre.
En Bases de datos, seleccione
lfhudidb
.En Tablas, seleccione
product
.A continuación, puede conceder el acceso basado en columnas especificando las columnas.
En Permisos de tabla, marque Seleccionar.
En Permisos de datos, seleccione Acceso basado en columnas e Incluir columnas.
Seleccione las columnas
product_name
,price
ycategory
.Elija Conceder.
Para consultar la tabla de Hudi con Athena
Ahora puede empezar a consultar la tabla de Hudi que creó con Athena. Si es la primera vez que ejecuta consultas en Athena, debe configurar una ubicación de resultados de consulta. Para obtener más información, consulte Especificación de una ubicación de resultados de consulta.
Cierre sesión como usuario administrador del lago de datos e inicie sesión como
lf-consumer-analystuser
en la región EE.UU. Este (Virginia del Norte) con la contraseña indicada anteriormente en el AWS CloudFormation resultado.Abra la consola Athena en https://console.aws.amazon.com/athena/
. Elija Configuración y seleccione Administrar.
En el cuadro Ubicación del resultado de la consulta, introduzca la ruta al depósito que creó en AWS CloudFormation los resultados. Copie el valor de
AthenaQueryResultLocation
(s3://lf-otf-tutorial-123456789012/athena-results/) y guarde.Ejecute la consulta siguiente para obtener una vista previa de los 10 registros almacenados en la tabla de Hudi:
select * from lfhudidb.product limit 10;
Para obtener más información sobre la consulta de tablas de Hudi, vaya a Consulta de tablas de Hudi en la Guía del usuario de Amazon Athena.
Paso 4: Configurar los permisos para una tabla de Hudi
En esta sección, aprenderá a crear una tabla de Delta Lake con un archivo de manifiesto de enlaces simbólicos en el AWS Glue Data Catalog, a configurar los permisos de datos AWS Lake Formation y a consultarlos con Amazon Athena.
Para crear una tabla de Delta Lake.
En este paso, ejecutará un AWS Glue trabajo que creará una tabla transaccional de Delta Lake en el catálogo de datos.
-
Inicie sesión en el AWS Glue consola https://console.aws.amazon.com/glue/
en la región EE.UU. Este (Norte de Virginia) como usuario administrador del lago de datos.
-
En el panel de navegación izquierdo, seleccione trabajos.
-
Seleccione
native-delta-create
. -
En Acciones, seleccione Editar trabajo.
-
En Detalles del trabajo, expanda Propiedades avanzadas y active la casilla situada junto a Usar AWS Glue Data Catalog como metaalmacén de Hive para añadir los metadatos de la tabla en. AWS Glue Data Catalog Esto especifica AWS Glue Data Catalog el metaalmacén de los recursos del catálogo de datos utilizados en el trabajo y permite que los permisos de Lake Formation se apliquen más adelante a los recursos del catálogo.
Seleccione Guardar.
-
Seleccione Ejecutar en Acciones.
Este trabajo crea una tabla de Delta Lake de nombre
product
en la base de datoslfdeltadb
. Verifique la tablaproduct
en la consola de Lake Formation.
Para registrar la ubicación de los datos con Lake Formation
A continuación, registre una ruta de Amazon S3 como ubicación raíz de su lago de datos.
-
Abra la consola de Lake Formation en https://console.aws.amazon.com/lakeformation/
el usuario administrador del lago de datos. En el panel de navegación, en Registrar e ingerir, seleccione Ubicación de los datos.
En la parte superior derecha de la consola, seleccione Registrar ubicación.
En la página Registrar ubicación, introduzca:
-
Ruta de Amazon S3: seleccione Examinar y elija
lf-otf-datalake-123456789012
. Haga clic en la flecha derecha (>) junto a la ubicación raíz de Amazon S3 para ir a la ubicacións3/buckets/lf-otf-datalake-123456789012/transactionaldata/native-delta
. -
IAMrol: elija
LF-OTF-RegisterRole
como IAM rol. Seleccione Registrar ubicación.
-
Para conceder permisos de lago de datos en la tabla de Delta Lake
En este paso, concederemos permisos de lago de datos al usuario analista de negocios.
En Permisos del lago de datos, seleccione Conceder.
En la pantalla Otorgar permisos de datos, elija IAMusuarios y roles.
-
lf-consumer-analystuser
en el menú desplegable. Seleccione un recurso de Catálogo de datos con nombre.
En Bases de datos, seleccione
lfdeltadb
.En Tablas, seleccione
product
.A continuación, puede conceder el acceso basado en columnas especificando las columnas.
En Permisos de tabla, marque Seleccionar.
En Permisos de datos, seleccione Acceso basado en columnas e Incluir columnas.
Seleccione las columnas
product_name
,price
ycategory
.Elija Conceder.
Para consultar la tabla de Delta Lake con Athena
Ahora puede empezar a consultar la tabla de Delta Lake que creó con Athena. Si es la primera vez que ejecuta consultas en Athena, debe configurar una ubicación de resultados de consulta. Para obtener más información, consulte Especificación de una ubicación de resultados de consulta.
Cierre sesión como usuario administrador del lago de datos e inicie sesión como
BusinessAnalystUser
en la región EE.UU. Este (Virginia del Norte) con la contraseña indicada anteriormente en el AWS CloudFormation resultado.Abra la consola Athena en https://console.aws.amazon.com/athena/
. Elija Configuración y seleccione Administrar.
En el cuadro Ubicación del resultado de la consulta, introduzca la ruta al depósito que creó en AWS CloudFormation los resultados. Copie el valor de
AthenaQueryResultLocation
(s3://lf-otf-tutorial-123456789012/athena-results/) y guarde.Ejecute la consulta siguiente para obtener una vista previa de los 10 registros almacenados en la tabla de Delta Lake:
select * from lfdeltadb.product limit 10;
Para obtener más información sobre la consulta de tablas de Delta Lake, vaya a Consulta de tablas de Delta Lake en la Guía del usuario de Amazon Athena.
Paso AWS 5: Limpiar los recursos
Para limpiar los recursos
Para evitar que se le cobren cargos no deseados Cuenta de AWS, elimine los AWS recursos que utilizó para este tutorial.
-
Inicia sesión en la AWS CloudFormation consola en https://console.aws.amazon.com/cloudformation
como administrador. IAM -
Elimine la pila de formación de nube. Las tablas que ha creado se eliminan automáticamente con la pila.