

# Catálogo y análisis de sus datos con Inventario de S3
<a name="storage-inventory"></a>

Puede usar el Inventario de Amazon S3 para administrar su almacenamiento. Por ejemplo, puede utilizarlo para auditar e informar sobre el estado de replicación y cifrado de los objetos para sus necesidades empresariales, de conformidad y legales. Puede simplificar o acelerar los flujos de trabajo empresariales y los trabajos relacionados con los macrodatos mediante el Inventario de Amazon S3, que ofrece una alternativa programada a las operaciones de la API `List` sincrónica de Amazon S3. El Inventario de Amazon S3 no utiliza operaciones de API `List` para auditar los objetos y no afecta a la tasa de solicitudes del bucket.

El Inventario de Amazon S3 proporciona archivos de salida con formato de valores separados por comas (CSV), [Optimized Row Columnar (ORC) de Apache](https://orc.apache.org/) o [https://parquet.apache.org/](https://parquet.apache.org/) que muestran diaria o semanalmente los objetos y los metadatos correspondientes en un bucket de S3 u objetos con un prefijo compartido (es decir, objetos con nombres que comienzan con la misma cadena). Si configura un inventario semanal, se genera un informe cada domingo (zona horaria UTC) después del informe inicial. Para obtener más información acerca de los precios de Amazon S3 Inventory, consulte [Precios de Amazon S3](https://aws.amazon.com/s3/pricing/).

Puede configurar varias listas de inventario para un bucket. Al configurar una lista de inventario, puede especificar lo siguiente: 
+ Qué metadatos de objetos incluir en el inventario
+ Si se deben enumerar todas las versiones del objeto o solo las versiones actuales
+ Dónde almacenar la salida del archivo de lista de inventario
+ Si se debe generar el inventario de forma diaria o semanal
+ Si se debe cifrar el archivo de lista de inventario

Puede consultar el Inventario de Amazon S3 con consultas SQL estándar mediante [Amazon Athena](https://docs.aws.amazon.com/athena/latest/ug/what-is.html), [Amazon Redshift Spectrum](https://docs.aws.amazon.com/redshift/latest/dg/c-getting-started-using-spectrum.html) y otras herramientas, como [https://prestodb.io/](https://prestodb.io/), [https://hive.apache.org/](https://hive.apache.org/) y [https://databricks.com/spark/about/](https://databricks.com/spark/about/). Para obtener más información acerca del uso de Athena para consultar sus archivos de inventario, consulte [Consulta de Amazon S3 Inventory con Amazon Athena](storage-inventory-athena-query.md). 

**nota**  
Amazon S3 puede tardar hasta 48 horas en entregar el primer informe del inventario.

## Buckets de origen y destino
<a name="storage-inventory-buckets"></a>

El bucket para el que el inventario enumera los objetos se denomina *bucket de origen*. El bucket en el que se almacena el archivo con la lista del inventario se denomina *bucket de destino*. 

**Bucket de origen**

El inventario enumera los objetos almacenados en el bucket de origen. Puede obtener una lista de inventario para todo un bucket, o puede filtrar la lista por prefijo de nombre de clave de objeto.

El bucket de origen:
+ Contiene los objetos enumerados en el inventario.
+ Contiene la configuración del inventario.

**Bucket de destino**

Los archivos con la lista de Amazon S3 Inventory se escriben en el bucket de destino. Para agrupar todos los archivos de la lista de inventario en una ubicación común del bucket de destino, puede especificar un prefijo de destino en la configuración del inventario.

El bucket de destino:
+ Contiene las listas de archivos de inventario. 
+ Contiene los archivos de manifiesto que enumeran todos los archivos de lista de inventario almacenados en el bucket de destino. Para obtener más información, consulte [Manifiesto de inventario](storage-inventory-location.md#storage-inventory-location-manifest).
+ Debe tener una política de bucket para conceder a Amazon S3 permiso para verificar la propiedad del bucket y permiso para escribir archivos en el bucket. 
+ Debe estar en la misma Región de AWS que el bucket de origen.
+ Puede ser igual que la del bucket de origen.
+ Puede ser propiedad de una Cuenta de AWS diferente a la cuenta que es propietaria del bucket de origen.

## Lista de Amazon S3 Inventory
<a name="storage-inventory-contents"></a>

Un archivo de lista de inventario contiene una lista de los objetos del bucket de origen y los metadatos para cada objeto. En el bucket de destino, se almacena un archivo de lista de inventario con uno de los siguientes formatos:
+ Un archivo CSV comprimido con GZIP
+ Como archivo Optimized Row Columnar (ORC) de Apache comprimido con ZLIB
+ Como archivo de Apache Parquet comprimido con Snappy

**nota**  
No se garantiza que los objetos de los informes de inventario de Amazon S3 estén clasificados en ningún orden.

Un archivo de lista de inventario contiene una lista de los objetos del bucket de origen y los metadatos para cada objeto de esa lista. Siempre se incluyen estos campos predeterminados:
+ **Nombre del bucket**: el nombre del bucket para el que se realiza el inventario.
+ **ETag**: la etiqueta de entidad (ETag) es un hash del objeto. La ETag solo refleja los cambios en el contenido de un objeto, no en sus metadatos. La ETag puede ser un resumen MD5 de los datos del objeto. Esto dependerá del método de creación del objeto y del tipo de cifrado. Para obtener más información, consulte [https://docs.aws.amazon.com/AmazonS3/latest/API/API_Object.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_Object.html) en la *Referencia de la API de Amazon Simple Storage Service*.
+ **Nombre de clave**: el nombre de la clave de objeto (o clave) que identifica unívocamente el objeto del bucket. Cuando se utiliza el formato de archivo CSV, el nombre de la clave se codifica como URL y se debe descodificar antes de poder utilizarlo.
+ **Fecha de la última modificación**: la fecha de creación del objeto o la última fecha de modificación, la última existente.
+ **Tamaño**: el tamaño del objeto en bytes, sin incluir el tamaño de las cargas multipartes incompletas, los metadatos del objeto ni los marcadores de eliminación.
+ **Clase de almacenamiento**: la clase de almacenamiento utilizada para almacenar el objeto. Establecida en `STANDARD`, `REDUCED_REDUNDANCY`, `STANDARD_IA`, `ONEZONE_IA`, `INTELLIGENT_TIERING`, `GLACIER`, `DEEP_ARCHIVE`, `OUTPOSTS`, `GLACIER_IR` o `SNOW`. Para obtener más información, consulte [Descripción y administración de clases de almacenamiento de Amazon S3](storage-class-intro.md).
**nota**  
El inventario de S3 no es compatible con S3 Express One Zone.

Puede incluir los siguientes campos de metadatos adicionales en el informe:
+ **Algoritmo de suma de comprobación**: indica el algoritmo utilizado para crear la suma de comprobación del objeto. Para obtener más información, consulte [Uso de algoritmos de suma de comprobación admitidos](checking-object-integrity-upload.md#using-additional-checksums).
+ **Estado de cifrado**: el estado del cifrado del servidor dependiendo del tipo de clave de cifrado que se utilice: cifrado del servidor con claves administradas por Amazon S3 (SSE-S3), cifrado del servidor con claves de AWS Key Management Service (AWS KMS) (SSE-KMS), cifrado del servidor de doble capa con claves de AWS KMS (DSSE-KMS) o cifrado del servidor con claves proporcionadas por el cliente (SSE-C). Establecida en `SSE-S3`, `SSE-KMS`, `DSSE-KMS`, `SSE-C` o `NOT-SSE`. Un estado de `NOT-SSE` significa que el objeto no está cifrado con el cifrado del servidor. Para obtener más información, consulte [Protección de los datos mediante el cifrado](UsingEncryption.md).
+ **Capa de acceso de S3 Intelligent-Tiering**: capa de acceso (frecuente o infrecuente) del objeto si está almacenado en la clase de almacenamiento S3 Intelligent-Tiering. Establecida en `FREQUENT`, `INFREQUENT`, `ARCHIVE_INSTANT_ACCESS`, `ARCHIVE` o `DEEP_ARCHIVE`. Para obtener más información, consulte [Clase de almacenamiento para optimizar automáticamente los datos con patrones de acceso cambiantes o desconocidos](storage-class-intro.md#sc-dynamic-data-access).
+ **Fecha de retención del bloqueo de objetos de S3**: la fecha hasta la que no se puede eliminar un objeto bloqueado. Para obtener más información, consulte [Bloqueo de objetos mediante Bloqueo de objetos](object-lock.md).
+ **Modo de retención del bloqueo de objetos de S3**: establecido en `Governance` o `Compliance` para los objetos que están bloqueados. Para obtener más información, consulte [Bloqueo de objetos mediante Bloqueo de objetos](object-lock.md).
+ **Estado de retención legal del bloqueo de objetos de S3**: establecido en `On` si se ha aplicado una retención legal a un objeto. De lo contrario, se establece en `Off`. Para obtener más información, consulte [Bloqueo de objetos mediante Bloqueo de objetos](object-lock.md).
+ **ID de versión**: el ID de la versión del objeto. Si activa el control de versiones en un bucket, Amazon S3 asigna un número de versión a los objetos que agregue a dicho bucket. Para obtener más información, consulte [Retención de varias versiones de objetos con Control de versiones de S3](Versioning.md). (Este campo no estará incluido si la lista solo está configurada para la versión actual de los objetos).
+ **IsLatest**: estará establecido en `True` si el objeto es la versión actual del objeto. (Este campo no estará incluido si la lista solo está configurada para la versión actual de los objetos).
+ **Marcador de eliminación**: establecido en `True`, si el objeto es un marcador de eliminación. Para obtener más información, consulte [Retención de varias versiones de objetos con Control de versiones de S3](Versioning.md). (Este campo se añade automáticamente al informe si este se ha configurado para que incluya todas las versiones de los objetos).
+ **Marcador de carga multiparte**: establecido en `True` si el objeto se cargó mediante una carga multiparte. Para obtener más información, consulte [Carga y copia de objetos con la carga multiparte en Amazon S3](mpuoverview.md).
+ **Propietario del objeto**: el ID de usuario canónico del propietario del objeto. Para obtener más información, consulte [Buscar el ID de usuario canónico de la cuenta de AWS](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-identifiers.html#FindCanonicalId) en la *Guía de referencia de la administración de cuentas de AWS*.
+ **Estado de replicación**: establecido en `PENDING`, `COMPLETED`, `FAILED` o `REPLICA`. Para obtener más información, consulte [Obtención de información del estado de replicación](replication-status.md).
+ **Estado de clave de bucket de S3**: establecido en `ENABLED` o `DISABLED`. Indica si el objeto utiliza una clave de bucket de S3 para SSE-KMS. Para obtener más información, consulte [Uso de claves de bucket de Amazon S3](bucket-key.md).
+ **Lista de control de acceso a objetos**: una lista de control de acceso (ACL) para cada objeto que define a qué Cuentas de AWS o grupos se les concede acceso a este objeto y el tipo de acceso que se concede. El campo ACL del objeto se define en formato JSON. Un informe de inventario de S3 incluye las ACL asociadas a los objetos del bucket de origen, incluso cuando las ACL están deshabilitadas para el bucket. Para obtener más información, consulte [Uso del campo de objeto de ACL](objectacl.md) y [Información general de las Listas de control de acceso (ACL)](acl-overview.md).
**nota**  
El campo ACL del objeto se define en formato JSON. Un informe de inventario muestra el valor del campo ACL del objeto como una cadena codificada en base64.  
Por ejemplo, supongamos que tiene el siguiente campo ACL de objeto en formato JSON:  

  ```
  {
          "version": "2022-11-10",
          "status": "AVAILABLE",
          "grants": [{
              "canonicalId": "example-canonical-user-ID",
              "type": "CanonicalUser",
              "permission": "READ"
          }]
  }
  ```
El campo ACL del objeto está codificado y se muestra como la siguiente cadena codificada en base64:  

  ```
  eyJ2ZXJzaW9uIjoiMjAyMi0xMS0xMCIsInN0YXR1cyI6IkFWQUlMQUJMRSIsImdyYW50cyI6W3siY2Fub25pY2FsSWQiOiJleGFtcGxlLWNhbm9uaWNhbC11c2VyLUlEIiwidHlwZSI6IkNhbm9uaWNhbFVzZXIiLCJwZXJtaXNzaW9uIjoiUkVBRCJ9XX0=
  ```
Para obtener el valor descodificado en JSON para el campo ACL del objeto, puede consultar este campo en Amazon Athena. Para obtener consultas de ejemplo, consulte [Consulta de Amazon S3 Inventory con Amazon Athena](storage-inventory-athena-query.md).
+ **Fecha de caducidad del ciclo de vida**: se establece en la marca temporal de caducidad del ciclo de vida del objeto. Este campo solo se rellenará si el objeto va a caducar según una regla de ciclo de vida aplicable. En otros casos, el campo estará vacío. Para obtener más información, consulte [Vencimiento de objetos](lifecycle-expire-general-considerations.md).

**nota**  
Cuando un objeto llega al final de su vida útil según su configuración de ciclo de vida, Amazon S3 lo coloca en una cola para eliminarlo de manera asincrónica. Por ello, es posible que haya un desfase entre la fecha de vencimiento y la fecha en que Amazon S3 elimina un objeto. El informe de inventario incluye los objetos que han caducado pero que aún no se han retirado. Para obtener más información sobre las acciones de vencimiento en S3 Lifecycle, consulte [Vencimiento de objetos](lifecycle-expire-general-considerations.md).

A continuación, se muestra un informe de inventario de ejemplo con campos de metadatos adicionales que constan de cuatro registros.

```
amzn-s3-demo-bucket1    example-object-1    EXAMPLEDC8l.XJCENlF7LePaNIIvs001    TRUE        1500    2024-08-15T15:28:26.0004    EXAMPLE21e1518b92f3d92773570f600    STANDARD    FALSE    COMPLETED    SSE-KMS    2025-01-25T15:28:26.000Z    COMPLIANCE    Off        ENABLED        eyJ2ZXJzaW9uIjoiMjAyMi0xMS0xMCIsInN0YXR1cyI6IkFWQUlMQUJMRSIsImdyYW50cyI6W3sicGVybWlzc2lvbiI6IkZVTExfQ09OVFJPTCIsInR5cGUiOiJDYW5vbmljYWxVc2VyIiwiY2Fub25pY2FsSWQiOiJFWEFNUExFNzY2ZThmNmIxMTVkOTNkNDFkZjJlYWM0MjBhYTRhNDY1ZDE3N2MxMzk4YmM2YTA4OGM3NmI3MDAwIn1dfQ==    EXAMPLE766e8f6b115d93d41df2eac420aa4a465d177c1398bc6a088c76b7000
amzn-s3-demo-bucket1    example-object-2    EXAMPLEDC8l.XJCENlF7LePaNIIvs002    TRUE        200    2024-08-21T15:28:26.000Z    EXAMPLE21e1518b92f3d92773570f601    INTELLIGENT_TIERING    FALSE    COMPLETED    SSE-KMS    2025-01-25T15:28:26.000Z    COMPLIANCE    Off    INFREQUENT    ENABLED    SHA-256    eyJ2ZXJzaW9uIjoiMjAyMi0xMS0xMCIsInN0YXR1cyI6IkFWQUlMQUJMRSIsImdyYW50cyI6W3sicGVybWlzc2lvbiI6IkZVTExfQ09OVFJPTCIsInR5cGUiOiJDYW5vbmljYWxVc2VyIiwiY2Fub25pY2FsSWQiOiJFWEFNUExFNzY2ZThmNmIxMTVkOTNkNDFkZjJlYWM0MjBhYTRhNDY1ZDE3N2MxMzk4YmM2YTA4OGM3NmI3MDAwIn1dfQ==    EXAMPLE766e8f6b115d93d41df2eac420aa4a465d177c1398bc6a088c76b7001
amzn-s3-demo-bucket1    example-object-3    EXAMPLEDC8l.XJCENlF7LePaNIIvs003    TRUE        12500    2023-01-15T15:28:30.000Z    EXAMPLE21e1518b92f3d92773570f602    STANDARD    FALSE    REPLICA    SSE-KMS    2025-01-25T15:28:26.000Z    GOVERNANCE    On        ENABLED        eyJ2ZXJzaW9uIjoiMjAyMi0xMS0xMCIsInN0YXR1cyI6IkFWQUlMQUJMRSIsImdyYW50cyI6W3sicGVybWlzc2lvbiI6IkZVTExfQ09OVFJPTCIsInR5cGUiOiJDYW5vbmljYWxVc2VyIiwiY2Fub25pY2FsSWQiOiJFWEFNUExFNzY2ZThmNmIxMTVkOTNkNDFkZjJlYWM0MjBhYTRhNDY1ZDE3N2MxMzk4YmM2YTA4OGM3NmI3MDAwIn1dfQ==    EXAMPLE766e8f6b115d93d41df2eac420aa4a465d177c1398bc6a088c76b7002
amzn-s3-demo-bucket1    example-object-4    EXAMPLEDC8l.XJCENlF7LePaNIIvs004    TRUE        100    2021-02-15T15:28:27.000Z    EXAMPLE21e1518b92f3d92773570f603    STANDARD    FALSE    COMPLETED    SSE-KMS    2025-01-25T15:28:26.000Z    COMPLIANCE    Off        ENABLED        eyJ2ZXJzaW9uIjoiMjAyMi0xMS0xMCIsInN0YXR1cyI6IkFWQUlMQUJMRSIsImdyYW50cyI6W3sicGVybWlzc2lvbiI6IkZVTExfQ09OVFJPTCIsInR5cGUiOiJDYW5vbmljYWxVc2VyIiwiY2Fub25pY2FsSWQiOiJFWEFNUExFNzY2ZThmNmIxMTVkOTNkNDFkZjJlYWM0MjBhYTRhNDY1ZDE3N2MxMzk4YmM2YTA4OGM3NmI3MDAwIn1dfQ==    EXAMPLE766e8f6b115d93d41df2eac420aa4a465d177c1398bc6a088c76b7003
```

Le recomendamos que cree una política del ciclo de vida que elimine las listas de inventario antiguas. Para obtener más información, consulte [Administración del ciclo de vida de los objetos](object-lifecycle-mgmt.md).

El permiso `s3:PutInventoryConfiguration` permite al usuario seleccionar todos los campos de metadatos que aparecen anteriormente para cada objeto al configurar una lista de inventario y especificar el bucket de destino para almacenar el inventario. Un usuario con acceso de lectura a los objetos del bucket de destino puede acceder a todos los campos de metadatos de objetos que están disponibles en la lista de inventario. Para restringir el acceso a un informe de inventario, consulte [Concesión de permisos para el inventario de S3 y el análisis de S3](example-bucket-policies.md#example-bucket-policies-s3-inventory-1).

### Consistencia del inventario
<a name="storage-inventory-contents-consistency"></a>

Puede que en cada lista de inventario no aparezcan todos sus objetos. La lista de inventario ofrece consistencia final para las solicitudes `PUT` tanto de nuevos objetos como de objetos sobrescritos, además de las solicitudes `DELETE`. Cada lista de inventario de un bucket es una instantánea de los objetos del bucket. En última instancia, estas listas son consistentes (es decir, una lista puede no incluir objetos añadidos o eliminados recientemente). 

Para comprobar el estado de un objeto antes de realizar ninguna acción sobre él, le recomendamos que realice una solicitud `HeadObject` con la API de REST para recuperar los metadatos del objeto o para comprobar sus propiedades en la consola de Amazon S3. También puede verificar los metadatos del objeto con la AWS CLI o los SDK de AWS. Para obtener más información, consulte [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectHEAD.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectHEAD.html) en la *Referencia de la API de Amazon Simple Storage Service*.

Para obtener más información sobre cómo trabajar con Amazon S3 Inventory, consulte los siguientes temas.

**Topics**
+ [Buckets de origen y destino](#storage-inventory-buckets)
+ [Lista de Amazon S3 Inventory](#storage-inventory-contents)
+ [Configuración de Inventario de Amazon S3](configure-inventory.md)
+ [Localizar la descripción del inventario](storage-inventory-location.md)
+ [Configuración de notificaciones de eventos de Amazon S3 para completar el inventario](storage-inventory-notification.md)
+ [Consulta de Amazon S3 Inventory con Amazon Athena](storage-inventory-athena-query.md)
+ [Convertir cadenas de ID de versión vacías de informes de Amazon S3 Inventory en cadenas nulas](inventory-configure-bops.md)
+ [Uso del campo de objeto de ACL](objectacl.md)