Skip to main content
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Cómo se eliminan los objetos

StorageGRID puede eliminar objetos ya sea en respuesta directa a una solicitud del cliente o automáticamente como resultado de la expiración del ciclo de vida de un bucket S3 o los requisitos de la política ILM. Comprender las diferentes formas en que se pueden eliminar objetos y cómo StorageGRID maneja las solicitudes de eliminación puede ayudarlo a administrar objetos de manera más efectiva.

StorageGRID puede utilizar uno de dos métodos para eliminar objetos:

  • Eliminación sincrónica: cuando StorageGRID recibe una solicitud de eliminación de cliente, todas las copias de objetos se eliminan inmediatamente. Después de eliminar las copias se informa al cliente que la eliminación se realizó correctamente.

  • Los objetos se ponen en cola para su eliminación: cuando StorageGRID recibe una solicitud de eliminación, el objeto se pone en cola para su eliminación y se informa inmediatamente al cliente que la eliminación se realizó correctamente. Las copias de objetos se eliminan más tarde mediante el procesamiento ILM en segundo plano.

Al eliminar objetos, StorageGRID utiliza el método que optimiza el rendimiento de la eliminación, minimiza los posibles retrasos en la eliminación y libera espacio más rápidamente.

La tabla resume cuándo StorageGRID utiliza cada método.

Método para realizar la eliminación Cuando se utiliza

Los objetos se ponen en cola para su eliminación

Cuando cualquiera de las siguientes condiciones sea verdadera:

  • La eliminación automática de objetos se ha activado por uno de los siguientes eventos:

    • Se alcanza la fecha de vencimiento o el número de días en la configuración del ciclo de vida de un bucket S3.

    • Transcurre el último período de tiempo especificado en una regla ILM.

    Nota: Los objetos en un bucket que tiene habilitado el Bloqueo de objetos S3 no se pueden eliminar si están bajo una retención legal o si se ha especificado una fecha de retención pero aún no se cumple.

  • Un cliente S3 solicita la eliminación y una o más de estas condiciones son verdaderas:

    • Las copias no se pueden eliminar en 30 segundos porque, por ejemplo, la ubicación de un objeto no está disponible temporalmente.

    • Las colas de eliminación en segundo plano están inactivas.

Los objetos se eliminan inmediatamente (eliminación sincrónica)

Cuando un cliente S3 realiza una solicitud de eliminación y se cumplen todas las siguientes condiciones:

  • Todas las copias se pueden eliminar en 30 segundos.

  • Las colas de eliminación en segundo plano contienen objetos para procesar.

Cuando los clientes S3 realizan solicitudes de eliminación, StorageGRID comienza agregando objetos a la cola de eliminación. Luego pasa a realizar la eliminación sincrónica. Asegurarse de que la cola de eliminación en segundo plano tenga objetos para procesar permite que StorageGRID procese las eliminaciones de manera más eficiente, especialmente para clientes de baja concurrencia, al mismo tiempo que ayuda a prevenir retrasos en la eliminación de clientes.

Tiempo necesario para eliminar objetos

La forma en que StorageGRID elimina objetos puede afectar el funcionamiento aparente del sistema:

  • Cuando StorageGRID realiza una eliminación sincrónica, puede tardar hasta 30 segundos en devolver un resultado al cliente. Esto significa que puede parecer que la eliminación ocurre más lentamente, aunque en realidad las copias se eliminan más rápido que cuando StorageGRID pone en cola los objetos para su eliminación.

  • Si supervisa de cerca el rendimiento de eliminación durante una eliminación masiva, es posible que observe que la tasa de eliminación parece ser lenta después de que se haya eliminado una cierta cantidad de objetos. Este cambio se produce cuando StorageGRID pasa de poner en cola objetos para su eliminación a realizar una eliminación sincrónica. La aparente reducción en la tasa de eliminación no significa que las copias de objetos se estén eliminando más lentamente. Por el contrario, indica que, en promedio, ahora se está liberando espacio más rápidamente.

Si está eliminando una gran cantidad de objetos y su prioridad es liberar espacio rápidamente, considere usar una solicitud de cliente para eliminar objetos en lugar de eliminarlos mediante ILM u otros métodos. En general, el espacio se libera más rápidamente cuando la eliminación la realizan los clientes porque StorageGRID puede usar la eliminación sincrónica.

La cantidad de tiempo necesaria para liberar espacio después de eliminar un objeto depende de varios factores:

  • Si las copias de objetos se eliminan de forma sincrónica o se ponen en cola para su eliminación más tarde (para solicitudes de eliminación del cliente).

  • Otros factores, como la cantidad de objetos en la red o la disponibilidad de recursos de la red cuando las copias de objetos se ponen en cola para su eliminación (tanto para eliminaciones de cliente como para otros métodos).

Cómo se eliminan los objetos versionados de S3

Cuando el control de versiones está habilitado para un bucket S3, StorageGRID sigue el comportamiento de Amazon S3 al responder a solicitudes de eliminación, ya sea que dichas solicitudes provengan de un cliente S3, la expiración del ciclo de vida de un bucket S3 o los requisitos de la política ILM.

Cuando los objetos están versionados, las solicitudes de eliminación de objetos no eliminan la versión actual del objeto y no liberan espacio. En cambio, una solicitud de eliminación de objeto crea un marcador de eliminación de cero bytes como la versión actual del objeto, lo que hace que la versión anterior del objeto sea "no actual". Un marcador de eliminación de objeto se convierte en un marcador de eliminación de objeto vencido cuando es la versión actual y no hay versiones no actuales.

Incluso aunque el objeto no se haya eliminado, StorageGRID se comporta como si la versión actual del objeto ya no estuviera disponible. Las solicitudes a ese objeto devuelven 404 NotFound. Sin embargo, debido a que no se han eliminado los datos del objeto no actual, las solicitudes que especifican una versión no actual del objeto pueden tener éxito.

Para liberar espacio al eliminar objetos versionados o para quitar marcadores de eliminación, utilice una de las siguientes opciones:

  • Solicitud de cliente S3: especifique el ID de la versión del objeto en la solicitud S3 DELETE Object(DELETE /object?versionId=ID ). Tenga en cuenta que esta solicitud solo elimina copias de objetos de la versión especificada (las otras versiones aún ocupan espacio).

  • Ciclo de vida del bucket: utilice el NoncurrentVersionExpiration acción en la configuración del ciclo de vida del bucket. Cuando se alcanza la cantidad de NoncurrentDays especificada, StorageGRID elimina de forma permanente todas las copias de versiones de objetos no actuales. Estas versiones de objetos no se pueden recuperar.

    El NewerNoncurrentVersions La acción en la configuración del ciclo de vida del bucket especifica la cantidad de versiones no actuales que se conservan en un bucket S3 versionado. Si hay más versiones no actuales que NewerNoncurrentVersions especifica que StorageGRID elimina las versiones anteriores cuando ha transcurrido el valor NoncurrentDays. El NewerNoncurrentVersions El umbral anula las reglas del ciclo de vida proporcionadas por ILM, lo que significa que un objeto no actual con una versión dentro del NewerNoncurrentVersions El umbral se mantiene si ILM solicita su eliminación.

    Para eliminar los marcadores de eliminación de objetos caducados, utilice el Expiration acción con una de las siguientes etiquetas: ExpiredObjectDeleteMarker , Days , o Date .

  • ILM:"Clonar una política activa" y agregue dos reglas ILM a la nueva política:

    • Primera regla: utilice “Tiempo no actual” como tiempo de referencia para que coincida con las versiones no actuales del objeto. En"Paso 1 (Ingresar detalles) del asistente para crear una regla de ILM" , seleccione para la pregunta "¿Aplicar esta regla solo a versiones de objetos anteriores (en depósitos S3 con control de versiones habilitado)?"

    • Segunda regla: utiliza Tiempo de ingesta para que coincida con la versión actual. La regla "Hora no actual" debe aparecer en la política encima de la regla Hora de ingestión.

      Para eliminar marcadores de eliminación de objetos vencidos, utilice una regla de Tiempo de ingesta para que coincida con los marcadores de eliminación actuales. Los marcadores de eliminación solo se eliminan cuando ha transcurrido un Período de tiempo de Días y el creador de eliminación actual ha expirado (no hay versiones no actuales).

  • Eliminar objetos en el depósito: utilice el administrador de inquilinos para"eliminar todas las versiones de los objetos" , incluidos los marcadores de eliminación, de un depósito.

Cuando se elimina un objeto versionado, StorageGRID crea un marcador de eliminación de cero bytes como la versión actual del objeto. Todos los objetos y marcadores de eliminación deben eliminarse antes de poder eliminar un depósito versionado.

  • Los marcadores de eliminación creados en StorageGRID 11.7 o versiones anteriores solo se pueden eliminar mediante solicitudes de cliente S3, no se eliminan mediante ILM, reglas de ciclo de vida del bucket ni mediante la eliminación de objetos en operaciones de bucket.

  • Los marcadores de eliminación de un depósito creado en StorageGRID 11.8 o posterior se pueden quitar mediante ILM, reglas de ciclo de vida del depósito, operaciones de eliminación de objetos en el depósito o una eliminación explícita del cliente S3.