Apache Iceberg
Puede completar las tablas de Iceberg, Hudi y Delta Lake en el AWS Glue Data Catalog mediante los siguientes métodos:
-
Rastreador de AWS Glue: Los Rastreador de AWS Glue pueden detectar y completar automáticamente los metadatos de las tablas de Iceberg, Hudi y Delta Lake en el Catálogo de datos. Para obtener más información, consulte Uso de rastreadores para completar el Catálogo de datos .
-
Trabajos de ETL de AWS Glue: Puede crear trabajos de ETL para escribir datos en las tablas de Iceberg, Hudi y Delta Lake, y completar sus metadatos en el Catálogo de datos. Para obtener más información, consulte Uso de marcos de lagos de datos con trabajos de ETL de AWS Glue.
-
Consola de AWS Glue, consola de AWS Lake Formation, AWS CLI o API: Puede usar la consola de AWS Glue, la consola de Lake Formation o API para crear y administrar las definiciones de las tablas de Iceberg en el Catálogo de datos.
Temas
Creación de tablas de Apache Iceberg
Puede crear tablas de Apache Iceberg que utilicen el formato de datos de Apache Parquet en el AWS Glue Data Catalog con datos que residan en Amazon S3. Una tabla en el Catálogo de datos es la definición de metadatos que representa los datos en un almacén de datos. AWS Glue crea tablas de Iceberg v2 de forma predeterminada. Para ver la diferencia entre las tablas v1 y v2, consulte Cambios de versión de formato
Apache Iceberg
Puede usar la consola de AWS Glue o de Lake Formation, o bien la operación CreateTable
en la API de AWS Glue, para crear una tabla de Iceberg en el Catálogo de datos. Para obtener más información, consulte la acción CreateTable (Python: create_table).
Cuando cree una tabla de Iceberg en el Catálogo de datos, deberá especificar el formato de la tabla y la ruta del archivo de metadatos en Amazon S3 para poder hacer lecturas y escrituras.
Puede utilizar Lake Formation para asegurar su tabla de Iceberg utilizando permisos de control de acceso específicos cuando registre la ubicación de datos de Amazon S3 con AWS Lake Formation. Para los datos de origen en Amazon S3 y los metadatos que no están registrados en Lake Formation, el acceso se determina mediante las políticas de permisos de IAM para Amazon S3 y acciones de AWS Glue. Para obtener más información, consulte Administración de permisos.
nota
El Catálogo de datos no admite la creación de particiones ni la adición de propiedades de tablas de iceberg.
Requisitos previos
Para crear tablas de Iceberg en el Catálogo de datos y configurar los permisos de acceso a los datos de Lake Formation, debe cumplir los siguientes requisitos:
-
Se requieren permisos para crear tablas de Iceberg sin datos registrados en Lake Formation.
Además de los permisos necesarios para crear una tabla en el Catálogo de datos, el creador de la tabla requiere los siguientes permisos:
s3:PutObject
en el recurso arn:aws:s3:::{bucketName}-
s3:GetObject
en el recurso arn:aws:s3:::{bucketName} -
s3:DeleteObject
en el recurso arn:aws:s3:::{bucketName}
-
Se requieren permisos para crear tablas de Iceberg con datos registrados en Lake Formation:
Para utilizar Lake Formation para administrar y asegurar los datos de su lago de datos, registre su ubicación de Amazon S3 que tiene los datos de las tablas con Lake Formation. De este modo, Lake Formation puede suministrar credenciales a servicios analíticos de AWS como Athena, Redshift Spectrum y Amazon EMR para acceder a los datos. Para obtener más información sobre el registro de una ubicación de Amazon S3, consulte Cómo añadir una ubicación de Amazon S3 a su lago de datos.
Una entidad principal que lee y escribe los datos subyacentes que están registrados en Lake Formation requiere los siguientes permisos:
-
lakeformation:GetDataAccess
-
DATA_LOCATION_ACCESS
Una entidad principal que tiene permisos de localización de datos en una localización también tiene permisos de localización en todas las ubicaciones secundarias.
Para obtener más información sobre los permisos de ubicación de datos, consulte Control de acceso a los datos subyacentes.
-
Para habilitar la compactación, el servicio debe asumir un rol de IAM que tenga permisos para actualizar las tablas del Catálogo de datos. Para obtener más información, consulte Requisitos previos para la optimización de tablas
Creación de tablas de Iceberg
Puede crear tablas de Iceberg v1 y v2 con la consola de AWS Glue o de Lake Formation, o bien con la AWS Command Line Interface, tal como se documenta en esta página. También puede crear tablas de Iceberg con el Rastreador de AWS Glue. Para más información, consulte Catálogo de datos y rastreadores en la Guía para desarrolladores de AWS Glue.
Creación de una tabla de Iceberg
Inicie sesión en la AWS Management Console y abra la consola de AWS Glue en https://console.aws.amazon.com/glue/
. En Catálogo de datos, seleccione Tablas y utilice el botón Crear tabla para especificar los siguientes atributos:
-
Nombre de la tabla: Ingrese el nombre de la tabla. Si utiliza Athena para acceder a las tablas, utilice los consejos para nombres recogidos en la Guía del usuario de Amazon Athena.
-
Base de datos: Seleccione una base de datos existente o cree una nueva.
-
Descripción: Descripción de la tabla. Puede escribir una descripción para ayudarle a entender el contenido de la tabla.
-
Formato de la tabla: En Formato de la tabla, seleccione Apache Iceberg.
Activar la compactación: Seleccione Activar la compactación para compactar los objetos pequeños de Amazon S3 de la tabla de modo que formen objetos más grandes.
-
Rol de IAM: para ejecutar la compactación, el servicio asume un rol de IAM en su nombre. Puede elegir un rol de IAM mediante el menú desplegable. Asegúrese de que el rol tenga los permisos necesarios para habilitar la compactación.
Para obtener más información sobre los permisos necesarios, consulte Requisitos previos para la optimización de tablas .
-
Ubicación: Especifique la ruta a la carpeta en Amazon S3 que almacena la tabla de metadatos. Iceberg necesita un archivo de metadatos y una ubicación en el Catálogo de datos para poder hacer lecturas y escrituras.
-
Esquema: Seleccione Agregar columnas para añadir columnas y los tipos de datos de las columnas. Tiene la opción de crear una tabla vacía y actualizar el esquema más adelante. El Catálogo de datos admite los tipos de datos de Hive. Para obtener más información, consulte Tipos de datos de Hive
. Con Iceberg podrá desarrollar el esquema y la partición después de crear la tabla. Puede utilizar consultas de Athena para actualizar el esquema de la tabla y consultas de Spark
para actualizar las particiones.
-