Trabajar con marcadores de eliminación - Amazon Simple Storage Service

Trabajar con marcadores de eliminación

Un marcador de eliminación en Amazon S3 es un marcador de posición (o marcador) para un objeto con control de versiones que haya sido nombrado en una solicitud DELETE simple. Dado que el objeto estaba en un bucket con control de versiones habilitado, el objeto no se elimina. Sin embargo, el marcador de eliminación hace que Amazon S3 se comporte como si se hubiese eliminado.

Un marcador de eliminación tiene un nombre de clave (o clave) y un ID de versión al igual que cualquier otro objeto. Sin embargo, un marcador de eliminación se diferencia de otros objetos en los siguientes aspectos:

  • No tiene datos asociados con él.

  • No está asociado a un valor de lista de control de acceso (ACL).

  • No recupera nada de una solicitud GET porque no tiene datos, se obtiene un error 404.

  • La única operación que puede usar en un marcador de eliminación es una llamada a la API DELETE de Amazon S3. Para ello, deberá realizar la solicitud DELETE mediante un usuario o rol de AWS Identity and Access Management (IAM) que tenga los permisos apropiados.

Los marcadores de eliminación acumulan un cargo mínimo por almacenamiento en Amazon S3. El tamaño de almacenamiento de un marcador de eliminación es igual al tamaño del nombre de clave del marcador de eliminación. Un nombre de clave es una secuencia de caracteres Unicode. La codificación UTF-8 agrega entre 1 y 4 bytes de almacenamiento al bucket para cada carácter del nombre. Los marcadores de eliminación se almacenan en la clase de almacenamiento S3 Standard. Si desea saber cuántos marcadores de eliminación tiene y en qué clase de almacenamiento están almacenados, puede usar Amazon S3 Storage Lens. Para obtener más información, consulte Evaluación de la actividad y el uso de almacenamiento con Amazon S3 Storage Lens y Glosario de métricas de Amazon S3 Storage Lens.

Para obtener más información sobre nombres de clave, consulte Creación de nombres de clave de objeto. Para obtener información acerca de cómo eliminar marcadores de eliminación, consulte Gestión de marcadores de eliminación.

Solo Amazon S3 puede crear un marcador de eliminación, y lo hace cuando envía una solicitud DELETE Object a un objeto en un bucket con control de versiones habilitado o suspendido. El objeto denominado en la solicitud DELETE no se elimina realmente. Por el contrario, el marcador de eliminación se convierte en la versión actual del objeto. El nombre de la clave del objeto (o clave) se convierte en la clave del marcador de eliminación. Si intenta obtener un objeto y su versión actual es un marcador de eliminación, Amazon S3 responde con:

  • Un error 404 (no se encuentra)

  • Un encabezado de respuesta, x-amz-delete-marker: true

El encabezado de respuesta le indica que el objeto al que se ha obtenido acceso era un marcador de eliminación. Este encabezado de respuesta nunca devuelve false. Si el valor es false, Amazon S3 no incluye este encabezado de respuesta en la respuesta.

En el siguiente gráfico se muestra cómo un GET simple en un objeto cuya versión actual es un marcador de eliminación devuelve un error 404 Objeto no encontrado.

Para enumerar todas las versiones de todos los objetos de un bucket, use el subrecurso versions en una solicitud GET Bucket versions. Un GET simple no recupera objetos de marcador de eliminación. En el siguiente gráfico se muestra que una solicitud GET Bucket no recupera objetos cuya versión actual sea un marcador de eliminación.