Storage batch operations

Las operaciones por lotes de Storage te permiten automatizar tareas masivas, como borrar objetos o actualizar metadatos, en miles de millones de objetos en un entorno sin servidores. Esta automatización te ayuda a evitar escribir y mantener secuencias de comandos personalizadas, en especial en configuraciones empresariales grandes con datos distribuidos en miles de buckets.

Para aprender a crear trabajos de operaciones por lotes en objetos almacenados, consulta Crea y administra trabajos de operaciones por lotes en objetos almacenados. Para realizar cambios en objetos individuales, no es necesario crear un trabajo de operaciones por lotes. En su lugar, consulta las guías de tareas estándar, como borrar objetos o ver y editar metadatos de objetos.

Descripción general

Usa operaciones por lotes de almacenamiento para administrar grandes cantidades de archivos en tu proyecto. Para comenzar, crea una configuración de trabajo. La configuración define qué transformaciones se deben aplicar a objetos específicos. Estas transformaciones incluyen colocar conservaciones de objetos, borrar objetos, actualizar metadatos y contextos de objetos, reescribir objetos y aplicar parches a los controles de acceso.

Cuando envías un trabajo de operación por lotes, puedes supervisar su estado para verificar cuándo se aplican todas las transformaciones especificadas.

Beneficios

Los siguientes son los beneficios de las operaciones por lotes en objetos almacenados:

  • Escalabilidad: Realiza transformaciones en millones de objetos con un solo trabajo de operaciones por lotes en objetos almacenados.
  • Ejecución sin servidores: Ejecuta trabajos por lotes en un entorno sin servidores, lo que elimina la necesidad de administrar la infraestructura.
  • Automatización: Automatiza tareas complejas y repetitivas para mejorar la eficiencia operativa.
  • Reducción del tiempo de desarrollo: Evita escribir y mantener secuencias de comandos personalizadas complejas.
  • Integración del conjunto de datos de Storage Insights: Selecciona objetos directamente especificando condiciones que coincidan con los campos de tus conjuntos de datos de Storage Insights. Esta selección directa elimina la necesidad de ensamblar manualmente un manifiesto CSV o ejecutar consultas para exportar tu conjunto de datos desde BigQuery.
  • Rendimiento: Completa operaciones urgentes ejecutando varios trabajos por lotes simultáneos. Por ejemplo, puedes procesar hasta mil millones de objetos en tres horas.
  • Reintentos automáticos: Vuelve a intentar las operaciones con errores de forma automática.
  • Supervisión de trabajos: Realiza un seguimiento detallado del progreso para supervisar el estado y la finalización de todos los trabajos.

Casos de uso

Las operaciones por lotes de almacenamiento automatizan y simplifican la administración del almacenamiento en toda la organización. En las siguientes situaciones comunes, se describe cómo ayudan a proteger, organizar y administrar tus recursos:

  • Ayuda a proteger tus datos: Administra tu postura de seguridad a gran escala. Por ejemplo, puedes rotar las claves de encriptación en millones de objetos, aplicar o quitar retenciones de objetos para aplicar la inmutabilidad y aplicar parches a las listas de control de acceso (LCA) de forma masiva para quitar el acceso de lectura público a los datos privados.

  • Mantén el cumplimiento: Ayuda a cumplir con las reglamentaciones de retención de datos. Usa conservaciones de objetos segmentadas para aplicar reglas de retención, establecer plazos de vencimiento específicos y borrar objetos dentro de un período determinado para cumplir con las políticas de eliminación.

  • Transforma datos a gran escala: Realiza actualizaciones masivas en las propiedades de los objetos. Por ejemplo, puedes actualizar los metadatos de objetos personalizados o fijos, y etiquetar archivos para sistemas downstream actualizando o borrando los contextos personalizados de los objetos.

  • Administra los costos de almacenamiento: Ayuda a optimizar tus gastos de Cloud Storage. Por ejemplo, puedes borrar de forma masiva objetos activos innecesarios, depurar registros obsoletos borrando de forma permanente las versiones de objetos no actuales y mover objetos de Standard Storage a clases de almacenamiento más frías, como Archive Storage, a gran escala.

Configuraciones de trabajos

Para crear un trabajo de operaciones por lotes de almacenamiento, establece los siguientes parámetros de configuración del trabajo. Los parámetros de configuración de trabajos son parámetros que controlan cómo el trabajo procesa los objetos.

  • Nombre del trabajo: Es un nombre único para identificar el trabajo de operaciones por lotes en objetos almacenados. Usa este nombre para hacer un seguimiento, supervisar y hacer referencia al trabajo. Los nombres de los trabajos son alfanuméricos, por ejemplo, job-01.

  • Descripción del trabajo (opcional): Es una descripción breve del propósito del trabajo. Esta descripción te ayuda a comprender y documentar lo que hace el trabajo. Por ejemplo, Deletes all objects in a bucket.

  • Lista de buckets: Es una lista separada por comas de uno o más nombres de bucket que contienen los objetos que deseas procesar. Puedes especificar hasta 1,000 buckets de cualquier proyecto, siempre y cuando cada bucket esté inscrito en un plan de Storage Intelligence.

  • Selección de objetos: Son los criterios de selección que definen qué objetos se procesarán. Puedes especificar los criterios con cualquiera de las siguientes opciones:

    • Filtros de conjuntos de datos: Usa Common Expression Language (CEL) para filtrar objetos según los campos de metadatos de tu conjunto de datos de Storage Insights. Puedes ejecutar trabajos por lotes en objetos de varios buckets de un proyecto. Cuando usas filtros de conjuntos de datos para la selección de objetos, las operaciones por lote en objetos almacenados se orientan a los objetos que están activos y actualizados a partir de la instantánea del conjunto de datos seleccionado. Por lo tanto, el trabajo solo incluye objetos que tienen un valor NULL para softDeleteTime y timeDeleted en el momento de la instantánea. Para obtener más información, consulta Crea un trabajo con filtros avanzados.

    • Manifiesto: Crea un manifiesto y especifica su ubicación cuando crees el trabajo de operaciones por lotes en objetos almacenados. El manifiesto es un archivo CSV que se sube a Google Cloud y que contiene la lista de objetos que se deben procesar. Cada fila del manifiesto debe incluir el bucket y el name del objeto. De manera opcional, puedes especificar el generation del objeto. Si omites el valor generation, el trabajo procesa la versión publicada del objeto.

      El archivo de manifiesto debe incluir una fila de encabezado con el siguiente formato:

      bucket,name,generation

      A continuación, se muestra un ejemplo del manifiesto:

      bucket,name,generation
      bucket_1,object_1,generation_1
      bucket_1,object_2,generation_2
      bucket_2,object_3,generation_3
      

      También puedes crear un manifiesto con conjuntos de datos de Storage Insights. Para obtener más información, consulta Crea un manifiesto con conjuntos de datos de Storage Insights.

    • Prefijos de objetos: Especifica una lista de prefijos para filtrar objetos en el bucket. El trabajo solo procesa los objetos que coinciden con estos prefijos. Si dejas vacía la lista de prefijos, el trabajo procesará todos los objetos del bucket.

  • Tipo de trabajo: Las operaciones por lotes de almacenamiento admiten los siguientes tipos de trabajos, que ejecutan un solo trabajo por operación por lotes.

    • Borrado de objetos: Borra objetos dentro de un bucket para optimizar los costos, administrar el ciclo de vida de tus datos y cumplir con las políticas de eliminación de datos.

    • Actualizaciones de metadatos: Puedes modificar los siguientes metadatos de objetos:

      • Metadatos personalizados: Puedes actualizar cualquier par clave-valor definido por el usuario asociado con el objeto.

      • Metadatos fijos: Puedes actualizar Cache-Control, Content-Disposition, Content-Encoding, Content-Language, Content-Type, Custom-Time y la configuración de retención. Para modificar las conservaciones de objetos, usa el tipo de trabajo de actualizaciones de conservación de objetos.

    • Actualizaciones de conservación de objetos: Puedes habilitar o inhabilitar las conservaciones de objetos. Las conservaciones de objetos impiden que estos se borren o modifiquen. Estas conservaciones son esenciales para el cumplimiento y la retención de datos.

    • Actualizaciones de claves de encriptación de objetos: Puedes administrar las claves de encriptación administradas por el cliente para uno o más objetos. Esta capacidad incluye aplicar o cambiar claves de encriptación con el método rewrite object.

    • Actualizaciones del contexto de objeto: Administra los contextos de objeto asociados con los objetos. Puedes borrar todos los contextos de objetos existentes o realizar actualizaciones específicas, como quitar claves o insertar y actualizar pares clave-valor.

    • Actualizaciones de la clase de almacenamiento de objetos: Puedes cambiar la clase de almacenamiento de los objetos de forma masiva para optimizar los costos.

    • Actualizaciones de la lista de control de acceso (LCA) de objetos: Puedes aplicar parches a las LCA de objetos para agregar, actualizar o quitar otorgamientos para entidades como allUsers y allAuthenticatedUsers.

  • Ejecución de prueba (opcional): Usa el modo de ejecución de prueba para evitar parámetros de configuración incorrectos accidentales a gran escala. Una ejecución de prueba simula la operación sin realizar transformaciones. Esta simulación te ayuda a validar la configuración del trabajo antes de ejecutar el trabajo real. Los resultados de la ejecución de prueba proporcionan una vista previa de los siguientes detalles antes de ejecutar el trabajo:

    • La cantidad de objetos que afecta el trabajo.

    • Posibles errores

    • El tamaño total de los objetos afectados, si filtras por prefijos de objetos.

Precios

Para estimar los cargos de tu trabajo o ejecución de prueba, consulta los precios de Cloud Storage.

Puedes usar una ejecución de prueba para validar tu configuración sin incurrir en costos operativos, aunque la ejecución de prueba puede generar costos de creación de listas de objetos.

Limitaciones

Las operaciones por lotes de almacenamiento tienen las siguientes limitaciones:

  • Los trabajos de operaciones por lotes en objetos almacenados tienen una vida útil máxima de 14 días. Cualquier trabajo en curso que no se complete en un plazo de 14 días a partir de su creación se cancela automáticamente.

  • Puedes incluir un máximo de 1,000 prefijos de objetos en un solo trabajo.

  • Ejecutar más de 10 trabajos simultáneos en el mismo bucket degrada el rendimiento de cada trabajo.

  • Puedes ejecutar un solo trabajo por lotes en un máximo de 1,000 buckets en un proyecto.

  • Los filtros de bucket y de objetos están limitados a un máximo de 150 caracteres cada uno.

  • Las operaciones por lotes de almacenamiento seleccionan automáticamente la hora de la instantánea del conjunto de datos de Storage Insights en función del manifiesto global. Esta selección hace coincidir todos los buckets de destino con la misma hora de la instantánea para el descubrimiento de objetos. La hora de la instantánea global seleccionada se devuelve en la respuesta de la API. Si la hora de la instantánea tiene más de dos días, la creación del trabajo falla. Para obtener información sobre cómo resolver este error, consulta Soluciona problemas de operaciones por lotes de Storage.

  • Las operaciones por lotes de almacenamiento no se admiten en los buckets que tienen habilitados los pagos del solicitante.

  • Cuando usas conjuntos de datos de Storage Insights para la selección de objetos, las operaciones por lotes en objetos almacenados se orientan a los objetos que están activos y actualizados a partir de la instantánea del conjunto de datos seleccionado.

¿Qué sigue?