Vencimiento de objetos - Amazon Simple Storage Service

Vencimiento de objetos

Puede agregar acciones de transición a una configuración de S3 Lifecycle para indicar a Amazon S3 que elimine objetos al final de su ciclo de vida. Cuando un objeto llega al final de su vida útil según su configuración de ciclo de vida, Amazon S3 realizará una acción Expiration según el estado de Control de versiones de S3 en el que se encuentre el bucket:

  • Bucket no versionado: Amazon S3 coloca el objeto en cola para eliminarlo y lo hace de manera asincrónica, por lo que se elimina de forma permanente.

  • Bucket con el control de versiones activado: si la versión actual del objeto no es un marcador de eliminación, Amazon S3 añade un marcador de eliminación con un ID de versión exclusivo. Esto convierte la versión actual en no actual, y el marcador de eliminación en la versión actual.

  • Bucket con el control de versiones suspendido: Amazon S3 crea un marcador de eliminación con un ID de versión nulo. Este marcador de eliminación sustituye cualquier versión del objeto con un ID de versión nulo en la jerarquía de versiones, lo que elimina el objeto de manera eficaz.

Para un bucket con control de versiones (un bucket con el control de versiones habilitado o suspendido), hay varios aspectos que se deben tener en cuenta en relación con cómo administra Amazon S3 la acción Expiration. En el caso de los buckets con el control de versiones activado o suspendido, se aplica lo siguiente:

  • La caducidad del objeto solo se aplica a la versión actual del objeto (no tiene ningún impacto sobre las versiones del objeto no actuales).

  • Amazon S3 no realiza ninguna acción si hay una o varias versiones del objeto y el marcador de eliminación es la versión actual.

  • Si la versión actual del objeto es la única versión del objeto y, además, es un marcador de eliminación (también denominado marcador de eliminación de objeto vencido, en el que todas las versiones del objeto se han eliminado y solo queda un marcador de eliminación), Amazon S3 elimina el marcador de eliminación del objeto vencido. También puede usar la acción Expiration para ordenar a Amazon S3 que elimine los marcadores de eliminación de objeto vencidos. Por ejemplo, consulte Eliminación de marcadores de eliminación de objetos vencidos en un bucket con control de versiones habilitado.

  • Puede usar el elemento de acción NoncurrentVersionExpiration para indicar a Amazon S3 que elimine de forma permanente versiones no actuales de objetos. Estos objetos eliminados no se pueden recuperar. Puede basar este vencimiento en un número determinado de días desde que los objetos se vuelvan no actuales. Además del número de días, también puede indicar un número máximo de versiones no actuales que deben retenerse (entre 1 y 100). Este valor especifica cuántas versiones no actuales más recientes deben existir para que Amazon S3 pueda realizar la acción asociada en una versión determinada. Para especificar la cantidad máxima de versiones no actuales, es necesario proporcionar un elemento Filter. Si no especifica un elemento Filter, Amazon S3 genera un error InvalidRequest cuando proporcione una cantidad máxima de versiones no actuales. Para obtener información sobre cómo usar la acción NoncurrentVersionExpiration, consulte Elementos para describir las acciones del ciclo de vida.

  • Amazon S3 no realiza ninguna acción en las versiones no actuales de los objetos que tienen aplicada la configuración del bloqueo de objetos de S3.

  • Para los objetos con un estado de replicación Pending, Amazon S3 no realiza ninguna acción en las versiones actuales o no actuales de los objetos.

Para obtener más información, consulte Retención de varias versiones de objetos con Control de versiones de S3.

importante

Cuando tiene varias reglas en una configuración de S3 Lifecycle, un objeto puede reunir los requisitos para varias acciones de S3 Lifecycle realizadas el mismo día. En tales casos, Amazon S3 sigue estas reglas generales:

  • La eliminación permanente prevalece sobre la transición.

  • La transición prevalece sobre la creación de marcadores de eliminación.

  • Cuando un objeto es apto para una transición S3 Glacier Flexible Retrieval y una transición S3 Standard-IA (o una transición S3 One Zone-IA), Amazon S3 elige la transición S3 Glacier Flexible Retrieval.

Para ver ejemplos, consulta Ejemplos de superposición de filtros y conflictos entre acciones del ciclo de vida.

Objetos existentes y nuevos

Cuando añade una configuración de ciclo de vida a un bucket, las reglas de configuración se aplican a los objetos existentes y a los objetos que añade posteriormente. Por ejemplo, si hoy agrega una regla de configuración de Lifecycle con una acción de vencimiento que causa que objetos con un prefijo específico expiren 30 días después de la creación, Amazon S3 pondrá en cola de eliminación cualquier objeto existente con más de 30 días de antigüedad y que tenga el prefijo especificado.

importante

No puede usar una política de bucket para evitar eliminaciones ni transiciones mediante una regla de S3 Lifecycle. Por ejemplo, aunque la política de bucket deniegue todas las acciones a todas las entidades principales, la configuración de S3 Lifecycle seguirá funcionando con normalidad.

Cómo saber cuándo caducarán los objetos

Para conocer cuándo está previsto el vencimiento de la versión actual de un objeto, utilice las operaciones de la API HeadObject o GetObject. Estas operaciones de la API devuelven encabezados de respuesta que facilitan la fecha y la hora en que la versión actual del objeto ya no se puede almacenar en la memoria caché.

nota
  • Es posible que la fecha de vencimiento y la fecha en que Amazon S3 elimina un objeto estén desfasadas. No se le cobrará por el tiempo de almacenamiento asociado con un objeto que ha vencido.

  • Antes de actualizar, deshabilitar o eliminar las reglas del ciclo de vida, utilice las operaciones de la API de LIST (como ListObjectsV2, ListObjectVersions y ListMultipartUploads) o Catálogo y análisis de sus datos con Inventario de S3 para comprobar que Amazon S3 haya realizado la transición y haya caducado los objetos aptos en función de sus casos de uso.

Cargo por duración mínima del almacenamiento

Si crea una regla de vencimiento de S3 Lifecycle para provocar el vencimiento de objetos que han estado en la clase de almacenamiento S3 Standard-IA o S3 One Zone-IA durante menos de 30 días, se le cobrarán 30 días. Si crea una regla de vencimiento del ciclo de vida para provocar el vencimiento de objetos que han estado en el almacenamiento S3 Glacier Flexible Retrieval durante menos de 90 días, se le cobrarán 90 días. Si crea una regla de vencimiento de Lifecycle para provocar el vencimiento de los objetos que han estado en el almacenamiento S3 Glacier Deep Archive durante menos de 180 días, se le cobrarán 180 días.

Para obtener más información, consulte Precios de Amazon S3.