Creación de configuraciones de tablas de metadatos
Para generar y almacenar Metadatos de Amazon S3 en tablas de metadatos de Apache Iceberg totalmente administradas, debe crear una configuración de tabla de metadatos para el bucket de uso general. Amazon S3 se ha diseñado para actualizar continuamente las tablas de metadatos y reflejar los últimos cambios en los datos, siempre y cuando la configuración esté activa en el bucket. Además, Amazon S3 optimiza continuamente las tablas de metadatos para ayudar a reducir los costos de almacenamiento y mejorar el rendimiento de las consultas de análisis.
Para cada bucket de uso general, puede crear una configuración de tabla de metadatos que contenga dos tablas de metadatos complementarias:
-
Tabla de diario: de forma predeterminada, la configuración de la tabla de metadatos contiene una tabla de diario, que captura los eventos que se producen en los objetos del bucket. En la tabla de diario se registran los cambios realizados en los datos casi en tiempo real, lo que lo ayuda a identificar los nuevos datos cargados en el bucket, realizar un seguimiento de los objetos eliminados recientemente, supervisar las transiciones del ciclo de vida y mucho más. La tabla de diario registra los objetos nuevos y las actualizaciones de los objetos y los metadatos (las actualizaciones que requieren una operación
PUT
oDELETE
).La tabla de diario captura metadatos solo para eventos de cambio (como cargas, actualizaciones y eliminaciones) que se producen después de crear la configuración de la tabla de metadatos. Como esta tabla se puede consultar, puede auditar los cambios del bucket mediante simples consultas SQL.
La tabla de diario es necesaria para cada configuración de tabla de metadatos. (En la versión inicial de Metadatos de S3, la tabla de diario se denominaba “tabla de metadatos”).
Para obtener más información sobre los datos que se almacenan en las tablas de diario, consulte Esquema de tablas de diario de Metadatos de S3.
Para ayudarlo a minimizar los costos de almacenamiento, puede habilitar la caducidad de los registros de la tabla de diario. Para obtener más información, consulte Caducidad de los registros de la tabla de diario.
-
Tabla de inventario en directo: opcionalmente, puede agregar una tabla de inventario en directo a la configuración de la tabla de metadatos. La tabla de inventario en directo proporciona un inventario sencillo y consultable de todos los objetos y las versiones en el bucket para que pueda determinar el estado más reciente de los datos.
Puede utilizar la tabla de inventario en directo para simplificar y acelerar los flujos de trabajo empresariales y los trabajos de macrodatos mediante la identificación de los objetos que desea procesar para diversas cargas de trabajo. Por ejemplo, puede consultar la tabla de inventario en directo para buscar todos los objetos almacenados en una clase de almacenamiento concreta, todos los objetos con determinadas etiquetas, todos los objetos sin el cifrado del servidor mediante claves de AWS Key Management Service (AWS KMS) (SSE-KMS), etc.
Cuando habilita la tabla de inventario en directo para la configuración de la tabla de metadatos, la tabla se somete a un proceso conocido como reposición, durante el cual Amazon S3 analiza el bucket de uso general para recuperar los metadatos iniciales de todos los objetos que existen en el bucket. Según el número de objetos del bucket, este proceso puede durar unos minutos (mínimo 15 minutos) o varias horas. Una vez finalizado el proceso de reposición, el estado de la tabla de inventario en directo cambia de Reposición a Activo. Una vez finalizada la reposición, las actualizaciones de los objetos suelen reflejarse en la tabla de inventario en directo en el plazo de una hora.
Se le cobra por la reposición de la tabla de inventario en directo. Si el bucket de uso general tiene más de mil millones de objetos, también se le cobrará una cuota mensual por la tabla de inventario en directo. Para obtener más información, consulte Precios de Amazon S3
. Para obtener más información sobre los datos que se almacenan en las tablas de inventario en directo, consulte Esquema de las tablas de inventario en directo de Metadatos de S3.
Las tablas de metadatos tienen el siguiente formato de nombre de recurso de Amazon (ARN):
arn:aws:s3tables:
region-code
:account-id
:bucket/aws-s3/table/metadata_table_name
Las tablas de diario se denominan journal
y las tablas de inventario en directo, inventory
.
Al crear la configuración de las tablas de metadatos, estas se almacenan en un bucket de tablas administradas de AWS. Todas las configuraciones de tabla de metadatos de la cuenta y de la misma región se almacenan en un único bucket de tablas administradas de AWS. Estos buckets de tablas administradas de AWS se denominan aws-s3
y tienen el siguiente formato de nombre de recurso de Amazon (ARN):
arn:aws:s3tables:
region
:account_id
:bucket/aws-s3
Por ejemplo, si el ID de cuenta es 123456789012 y el bucket de uso general está en Este de EE. UU. (Norte de Virginia) (us-east-1
), el bucket de tablas administradas de AWS también se crea en Este de EE. UU. (Norte de Virginia) (us-east-1
) y tiene el siguiente ARN:
arn:aws:s3tables:
us-east-1
:123456789012:bucket/aws-s3
De forma predeterminada, a los buckets de tablas administradas de AWS se les aplica el cifrado del servidor con claves administradas por Amazon S3 (SSE-S3). Después de crear la primera configuración de metadatos, puede establecer en la configuración de cifrado predeterminada para el bucket de tablas administradas de AWS que utilice el cifrado del servidor con claves de AWS Key Management Service (AWS KMS) (SSE-KMS). Para obtener más información, consulte Cifrado para buckets de tablas administradas de AWS y Especificación del cifrado del servidor con claves de AWS KMS (SSE-KMS) en buckets de tablas.
Dentro del bucket de tablas administradas de AWS, las tablas de metadatos de la configuración suelen almacenarse en un espacio de nombres con el siguiente formato de nomenclatura:
b_
general-purpose-bucket-name
Para obtener más información sobre los espacios de nombres de las tablas de metadatos, consulte Cómo funcionan las tablas de metadatos.
Al crear la configuración de las tablas de metadatos, puede cifrar las tablas de metadatos administradas de AWS con cifrado del servidor con las claves de AWS Key Management Service (AWS KMS) (SSE-KMS). Si decide utilizar SSE-KMS, debe proporcionar una clave de KMS administrada por el cliente en la misma región que el bucket de uso general. Solo puede establecer el tipo de cifrado para las tablas durante la creación de estas. Después de crear una tabla administrada de AWS, no se puede cambiar la configuración de cifrado. Para especificar SSE-KMS para las tablas de metadatos, debe tener ciertos permisos. Para obtener más información, consulte Permisos para SSE-KMS.
La configuración de cifrado de una tabla de metadatos tiene prioridad sobre la configuración de cifrado de bucket predeterminada. Si no especifica el cifrado de una tabla, esta heredará la configuración de cifrado predeterminada del bucket.
Los buckets de tablas administradas de AWS no cuentan para las cuotas de Tablas de S3. Para obtener más información sobre cómo trabajar con buckets de tablas administradas de AWS y tablas administradas de AWS, consulte Uso de buckets de tablas administradas de AWS.
Puede crear una configuración de tabla de metadatos mediante la consola de Amazon S3, la AWS Command Line Interface (AWS CLI), los SDK de AWS o la API de REST de Amazon S3.
nota
-
Si ha creado la configuración de Metadatos de S3 antes del 15 de julio de 2025, le recomendamos que la elimine y la vuelva a crear para poder hacer caducar los registros de la tabla de diario y crear una tabla de inventario. Para obtener más información, consulte Habilitación de las tablas de inventario en configuraciones de metadatos creadas antes del 15 de julio de 2025.
-
Si ha eliminado la configuración de la tabla de metadatos y desea volver a crear una configuración para el mismo bucket de uso general, primero debe eliminar manualmente las tablas de diario e inventario anteriores del bucket de tablas administradas de AWS. De lo contrario, no se podrá crear la nueva configuración de la tabla de metadatos porque esas tablas ya existen. Para eliminar las tablas de metadatos, consulte Eliminación de una tabla de metadatos.
Al eliminar una configuración de tabla de metadatos, solo se elimina la configuración. El bucket de tablas administradas de AWS y las tablas de metadatos seguirán existiendo, incluso si elimina la configuración de tabla de metadatos.
Requisitos previos
Antes de crear una configuración de tabla de metadatos, asegúrese de que cumple los siguientes requisitos previos:
-
Antes de crear una configuración de tabla de metadatos, asegúrese de que tiene los permisos de AWS Identity and Access Management (IAM) necesarios para crear y administrar tablas de metadatos. Para obtener más información, consulte Configuración de permisos para configurar tablas de metadatos.
-
Si tiene previsto consultar las tablas de metadatos con Amazon Athena u otro motor de consultas de AWS, asegúrese de integrar el bucket de tablas administradas de AWS con los servicios de análisis de AWS. Para obtener más información, consulte Integración de tablas de Amazon S3 con servicios de análisis de AWS.
Si ya ha integrado un bucket de tablas existente en esta región, el bucket de tablas administradas de AWS también se integra automáticamente. Para determinar el estado de integración de los buckets de tablas en esta región, abra la consola de Amazon S3 y elija Buckets de tablas en el panel de navegación izquierdo. En Integración con servicios de análisis de AWS, comprueba la región y si el estado de la integración indica Habilitado.
Creación de una configuración de tabla de metadatos
Creación de una configuración de tabla de metadatos
Antes de crear una configuración de tabla de metadatos, asegúrese de que ha revisado y cumplido los requisitos previos y que ha revisado Restricciones y limitaciones de las tablas de metadatos.
Inicie sesión en la AWS Management Console y abra la consola de Amazon S3 en https://console.aws.amazon.com/s3/
. -
En el panel de navegación izquierdo, elija Buckets de uso general.
-
Elija el bucket de uso general para el que desea crear una configuración de tabla de metadatos.
nota
Asegúrese de que este bucket de uso general es una Región de AWS donde hay buckets de tablas disponibles. Los buckets de tablas solo están disponibles en las regiones Este de EE. UU. (Norte de Virginia), Este de EE. UU. (Ohio) y Oeste de EE. UU. (Oregón).
-
En la página de detalles del bucket, elija la pestaña Metadatos.
-
En la pestaña Metadatos, elija Crear configuración de metadatos.
-
En la página Crear configuración de metadatos, en Tabla de diario, puede elegir si desea cifrar la tabla con cifrado del servidor mediante claves de AWS Key Management Service (AWS KMS) (SSE-KMS). De forma predeterminada, las tablas de diario se cifran con el cifrado del servidor mediante claves administradas por Amazon S3 (SSE-S3).
Si decide utilizar SSE-KMS, debe proporcionar una clave de KMS administrada por el cliente en la misma región que el bucket de uso general.
importante
Solo puede establecer el tipo de cifrado para las tablas de metadatos durante la creación de estas. Después de crear una tabla administrada de AWS, no se puede cambiar la configuración de cifrado.
-
Para cifrar la tabla de diario con SSE-S3 (el valor predeterminado), elija No especificar el tipo de cifrado.
-
Para cifrar la tabla de diario con SSE-KMS, elija Especificar el tipo de cifrado. En Tipo de cifrado, elija Cifrado del servidor con claves de AWS Key Management Service (AWS KMS) (SSE-KMS). En Clave de AWS KMS, elija entre las claves de KMS existentes o introduzca el ARN de clave de KMS. Si aún no tiene una clave de KMS, elija Introduzca el ARN de la clave de KMS y, a continuación, elija Crear una clave de KMS.
Asegúrese de haber configurado los permisos necesarios para SSE-KMS. Para obtener más información, consulte Permisos para SSE-KMS.
-
-
(Opcional) De forma predeterminada, los registros de la tabla de diario no caducan. Para ayudar a minimizar los costos de almacenamiento de la tabla de diario, elija Habilitado para Caducidad de registros.
Si habilita la caducidad de los registros de la tabla de diario, puede establecer el número de días que se retendrán los registros de la tabla de diario. Para establecer el valor de Días después de los cuales expiran los registros, puede especificar cualquier número entero entre
7
y2147483647
. Por ejemplo, para retener los registros de la tabla de diario durante un año, establezca este valor en365
.Los registros caducarán en un plazo de 24 a 48 horas después de que cumplan los requisitos para caducar.
importante
Una vez que los registros de la tabla de diario caducan, no se pueden recuperar.
En Los registros de la tabla de diario caducarán tras el número de días especificado, marque la casilla de verificación.
-
(Opcional) Si desea agregar una tabla de inventario a la configuración de la tabla de metadatos, en Tabla de inventario en directo, elija Habilitado en Estado de la configuración.
Puede elegir si desea cifrar la tabla con el cifrado del servidor mediante claves de AWS Key Management Service (AWS KMS) (SSE-KMS). De forma predeterminada, las tablas de inventario se cifran con el cifrado del servidor mediante claves administradas por Amazon S3 (SSE-S3).
Si decide utilizar SSE-KMS, debe proporcionar una clave de KMS administrada por el cliente en la misma región que el bucket de uso general.
importante
Solo puede establecer el tipo de cifrado para las tablas de metadatos durante la creación de estas. Después de crear una tabla administrada de AWS, no se puede cambiar la configuración de cifrado.
-
Para cifrar la tabla de inventario con SSE-S3 (el valor predeterminado), elija No especificar el tipo de cifrado.
-
Para cifrar la tabla de inventario con SSE-KMS, elija Especificar el tipo de cifrado. En Tipo de cifrado, elija Cifrado del servidor con claves de AWS Key Management Service (AWS KMS) (SSE-KMS). En Clave de AWS KMS, elija entre las claves de KMS existentes o introduzca el ARN de clave de KMS. Si aún no tiene una clave de KMS, elija Introduzca el ARN de la clave de KMS y, a continuación, elija Crear una clave de KMS.
Asegúrese de haber configurado los permisos necesarios para SSE-KMS. Para obtener más información, consulte Permisos para SSE-KMS.
-
-
Elija Crear configuración de tabla de metadatos.
Si la configuración de la tabla de metadatos se ha realizado correctamente, los nombres y los ARN de las tablas de metadatos se muestran en la pestaña Metadatos, junto con el nombre del bucket de tablas administradas de AWS y el espacio de nombres.
Si decide habilitar una tabla de inventario en directo para la configuración de la tabla de metadatos, la tabla se somete a un proceso conocido como reposición, durante el cual Amazon S3 analiza el bucket de uso general para recuperar los metadatos iniciales de todos los objetos que existen en el bucket. Según el número de objetos del bucket, este proceso puede durar unos minutos (mínimo 15 minutos) o varias horas. Una vez finalizado el proceso de reposición, el estado de la tabla de inventario cambia de Reposición a Activo. Una vez finalizada la reposición, las actualizaciones de los objetos suelen reflejarse en la tabla de inventario en el plazo de una hora.
Para supervisar las actualizaciones de la configuración de la tabla de metadatos, puede utilizar AWS CloudTrail. Para obtener más información, consulte Acciones de bucket de Amazon S3 de las que realiza un seguimiento el registro de CloudTrail.
Para ejecutar los siguientes comandos, debe tener instalado y configurado la AWS CLI. Si aún no ha instalado la AWS CLI, consulte Instalación o actualización de la última versión de la AWS CLI en la Guía del usuario de la AWS Command Line Interface.
De forma alternativa, puede ejecutar comandos de la AWS CLI desde la consola mediante AWS CloudShell. AWS CloudShell es un intérprete de comandos previamente autenticado y basado en el navegador que se puede lanzar directamente desde la AWS Management Console. Para obtener más información, consulte ¿Qué es CloudShell? e Introducción a AWS CloudShell en la Guía el usuario de AWS CloudShell.
Creación de una configuración de tabla de metadatos mediante la AWS CLI
Antes de crear una configuración de tabla de metadatos, asegúrese de que ha revisado y cumplido los requisitos previos y que ha revisado Restricciones y limitaciones de las tablas de metadatos.
Para utilizar los comandos de ejemplo siguientes, sustituya
con su información. user input
placeholders
-
Cree un archivo JSON que contenga la configuración de tabla de metadatos y guárdelo (por ejemplo,
metadata-config.json
). A continuación se muestra un ejemplo de configuración.Debe especificar si desea habilitar o deshabilitar la caducidad de los registros de la tabla de diario. Si decide habilitar la caducidad de los registros, también debe especificar el número de días tras los cuales caducarán los registros de la tabla de diario. Para establecer el valor de
Days
, puede especificar cualquier número entero entre7
y2147483647
. Por ejemplo, para retener los registros de la tabla de diario durante un año, establezca este valor en365
.Opcionalmente, puede configurar una tabla de inventario.
Tanto para las tablas de diario como para las tablas de inventario, puede especificar opcionalmente una configuración de cifrado. De forma predeterminada, las tablas de metadatos se cifran con el cifrado del servidor mediante claves administradas por Amazon S3 (SSE-S3), que puede especificar si establece
SseAlgorithm
enAES256
.Para cifrar las tablas de metadatos con cifrado del servidor mediante claves de AWS Key Management Service (AWS KMS) (SSE-KMS), establezca
SseAlgorithm
enaws:kms
. También debe establecerKmsKeyArn
en el ARN de una clave de KMS administrada por el cliente en la misma región donde se encuentra el bucket de uso general.{ "JournalTableConfiguration": { "RecordExpiration": { "Expiration": "ENABLED", "Days": 10 }, "EncryptionConfiguration": { "SseAlgorithm": "AES256" } }, "InventoryTableConfiguration": { "ConfigurationState": "ENABLED", "EncryptionConfiguration": { "SseAlgorithm": "aws:kms", "KmsKeyArn": "arn:aws:kms:
us-east-2
:account-id
:key/key-id
" } } } -
Utilice el siguiente comando para aplicar la configuración de tabla de metadatos al bucket de uso general (por ejemplo,
):amzn-s3-demo-bucket
aws s3api create-bucket-metadata-configuration \ --bucket
\ --metadata-configuration file://./amzn-s3-demo-bucket
metadata-config
.json \ --regionus-east-2
-
Para verificar que se ha creado la configuración, utilice el siguiente comando:
aws s3api get-bucket-metadata-configuration \ --bucket
\ --regionamzn-s3-demo-bucket
us-east-2
Para supervisar las actualizaciones de la configuración de la tabla de metadatos, puede utilizar AWS CloudTrail. Para obtener más información, consulte Acciones de bucket de Amazon S3 de las que realiza un seguimiento el registro de CloudTrail.
Puede enviar solicitudes de REST para crear una configuración de tabla de metadatos. Para obtener más información, consulte CreateBucketMetadataConfiguration en la Referencia de la API de Amazon S3.
Puede utilizar los SDK de AWS para crear una configuración de tabla de metadatos en Amazon S3. Para obtener información, consulte la lista de SDK compatibles en la Referencia de la API de Amazon S3.
Habilitación de las tablas de inventario en configuraciones de metadatos creadas antes del 15 de julio de 2025
Si ha creado la configuración de Metadatos de S3 antes del 15 de julio de 2025, le recomendamos que la elimine y la vuelva a crear para poder hacer caducar los registros de la tabla de diario y crear una tabla de inventario. Cualquier cambio en el bucket de uso general que se produzca entre la eliminación de la configuración antigua y la creación de la nueva no se registrará en ninguna de las tablas de diario.
Para migrar de una configuración de metadatos antigua a una nueva, haga lo siguiente:
-
Elimine la configuración existente de la tabla de metadatos. Para obtener instrucciones paso a paso, consulte Eliminación de configuraciones de tablas de metadatos.
-
Cree una nueva configuración de tabla de metadatos. Para obtener instrucciones paso a paso, consulte Creación de configuraciones de tablas de metadatos.
Si necesita ayuda para migrar la configuración, contacte con AWS Support.
Después de crear la nueva configuración de metadatos, tendrá dos tablas de diario. Si ya no necesita la tabla de diario anterior, puede eliminarla. Para obtener instrucciones paso a paso, consulte Eliminación de tablas de metadatos. Si ha retenido la tabla de diario anterior y desea unirla con la nueva, consulte en Unión de metadatos personalizados con tablas de metadatos de S3 los ejemplos sobre cómo unir dos tablas.
Después de la migración, puede hacer lo siguiente:
-
Para ver la configuración, ahora puede utilizar la operación de la API
GetBucketMetadataConfiguration
. Para determinar si la configuración es antigua o nueva, puede consultar el siguiente atributo de la respuesta de la APIGetBucketMetadataConfiguration
. Un tipo de bucket administrado de AWS ("aws"
) indica una nueva configuración y un tipo de bucket administrado por el cliente ("customer"
) indica una configuración antigua."MetadataTableConfigurationResult": { "TableBucketType": ["aws" | "customer"]
Para obtener más información, consulte Visualización de las configuraciones de tabla de metadatos.
nota
Puede utilizar las operaciones de la API
GetBucketMetadataConfiguration
yDeleteBucketMetadataConfiguration
con configuraciones de tabla de metadatos antiguas o nuevas. No obstante, si intenta utilizar las operaciones de la APIGetBucketMetadataTableConfiguration
yDeleteBucketMetadataTableConfiguration
con nuevas configuraciones, recibirá errores HTTP405 Method Not Allowed
.Asegúrese de actualizar los procesos para utilizar las nuevas operaciones de la API (
CreateBucketMetadataConfiguration
,GetBucketMetadataConfiguration
yDeleteBucketMetadataConfiguration
) en lugar de las operaciones de la API anterior. -
Si tiene previsto consultar las tablas de metadatos con Amazon Athena u otro motor de consultas de AWS, asegúrese de integrar el bucket de tablas administradas de AWS con los servicios de análisis de AWS. Si ya ha integrado un bucket de tablas existente en esta región, el bucket de tablas administradas de AWS también se integra automáticamente. Para obtener más información, consulte Integración de tablas de Amazon S3 con servicios de análisis de AWS.