Opérations de stockage par lot

Les opérations de stockage par lot vous permettent d'automatiser des tâches groupées, telles que la suppression d'objets ou la mise à jour de métadonnées, sur des milliards d'objets dans un environnement sans serveur. Cette automatisation vous évite d'avoir à écrire et à gérer des scripts personnalisés, en particulier dans les grandes entreprises où les données sont réparties sur des milliers de buckets.

Pour savoir comment créer des jobs d'opérations de stockage par lot, consultez Créer et gérer des jobs d'opérations de stockage par lot. Pour modifier des objets individuels, vous n'avez pas besoin de créer un job d'opérations par lot. Consultez plutôt les guides de tâches standards, tels que Supprimer des objets ou Afficher et modifier des métadonnées d'objets.

Présentation

Utilisez les opérations de stockage par lot pour gérer un grand nombre de fichiers dans votre projet. Pour commencer, créez une configuration de job. La configuration définit les transformations à appliquer à des objets spécifiques. Ces transformations incluent la définition d'obligations de conservation d'objets, la suppression d'objets, la mise à jour des métadonnées et des contextes d'objets, la réécriture d'objets et l'application de correctifs aux contrôles des accès.

Lorsque vous envoyez un job d'opération par lot, vous pouvez surveiller son état pour vérifier quand le job applique toutes les transformations spécifiées.

Avantages

Les opérations de stockage par lot offrent les avantages suivants :

  • Évolutivité : effectuez des transformations sur des millions d'objets avec un seul job d'opérations de stockage par lot.
  • Exécution sans serveur : exécutez des jobs par lot dans un environnement sans serveur, ce qui élimine la nécessité de gérer l'infrastructure.
  • Automatisation : automatisez les tâches complexes et répétitives pour améliorer l'efficacité opérationnelle.
  • Réduire le temps de développement : évitez d'écrire et de gérer des scripts personnalisés complexes.
  • Intégration d'ensembles de données Storage Insights : sélectionnez des objets directement en spécifiant des conditions qui correspondent aux champs de vos ensembles de données Storage Insights. Cette sélection directe élimine la nécessité d'assembler manuellement un fichier manifeste CSV ou d'exécuter des requêtes pour exporter votre ensemble de données depuis BigQuery.
  • Performances : effectuez des opérations urgentes en exécutant plusieurs jobs par lot simultanés. Par exemple, vous pouvez traiter jusqu'à un milliard d'objets en trois heures.
  • Nouvelles tentatives automatiques : relancez automatiquement les opérations ayant échoué.
  • Surveillance des jobs : suivez la progression en détail pour surveiller l'état et l'achèvement de tous les jobs.

Cas d'utilisation

Les opérations de stockage par lot automatisent et simplifient la gestion du stockage à l'échelle de l'organisation. Les scénarios courants suivants décrivent comment ils vous aident à protéger, organiser et gérer vos ressources :

  • Protégez vos données : gérez votre stratégie de sécurité à grande échelle. Par exemple, vous pouvez effectuer une rotation des clés de chiffrement sur des millions d'objets, appliquer ou supprimer des conservations d'objets pour appliquer l'immuabilité, et appliquer des correctifs aux listes de contrôle d'accès (LCA) de manière groupée pour supprimer l'accès en lecture public aux données privées.

  • Assurer la conformité : respectez les réglementations sur la conservation des données. Utilisez des préservations à titre conservatoire d'objets ciblés pour appliquer des règles de conservation, définir des délais d'expiration spécifiques et supprimer des objets dans un délai précis afin de respecter les règles de suppression.

  • Transformer les données à grande échelle : effectuez des mises à jour groupées des propriétés des objets. Par exemple, vous pouvez mettre à jour les métadonnées d'objets personnalisées ou fixes, et ajouter des tags aux fichiers pour les systèmes en aval en mettant à jour ou en effaçant les contextes personnalisés des objets.

  • Gérer les coûts de stockage : optimisez vos dépenses Cloud Storage. Par exemple, vous pouvez supprimer de manière groupée des objets actifs inutiles, purger les enregistrements obsolètes en supprimant définitivement les versions d'objets archivées et déplacer à grande échelle des objets de stockage standard vers des classes de stockage plus froides, telles que le stockage Archive.

Configurations de jobs

Pour créer un job d'opérations de stockage par lot, définissez les configurations de job suivantes. Les configurations de job sont des paramètres qui contrôlent la façon dont le job traite les objets.

  • Nom du job : nom unique permettant d'identifier le job d'opérations de stockage par lot. Utilisez ce nom pour suivre, surveiller et référencer le job. Les noms de jobs sont alphanumériques, par exemple job-01.

  • Description du job (facultatif) : brève description de l'objectif du job. Cette description vous aide à comprendre et à documenter ce que fait le job. Par exemple, Deletes all objects in a bucket.

  • Liste de buckets : liste d'un ou de plusieurs noms de buckets contenant les objets que vous souhaitez traiter, séparés par une virgule. Vous pouvez spécifier jusqu'à 1 000 buckets de n'importe quel projet, à condition que chaque bucket soit inscrit à un plan Storage Intelligence.

  • Sélection d'objets : critères de sélection qui définissent les objets à traiter. Vous pouvez spécifier les critères à l'aide de l'une des options suivantes :

    • Filtres d'ensemble de données : utilisez le langage CEL (Common Expression Language) pour filtrer les objets en fonction des champs de métadonnées de votre ensemble de données Storage Insights. Vous pouvez exécuter des jobs par lot sur des objets de plusieurs buckets d'un projet. Lorsque vous utilisez des filtres d'ensemble de données pour la sélection d'objets, les opérations de stockage par lot ciblent les objets actifs et actuels à la date de l'instantané de l'ensemble de données sélectionné. Par conséquent, le job n'inclut que les objets dont la valeur est NULL pour softDeleteTime et timeDeleted au moment de l'instantané. Pour en savoir plus, consultez Créer un job à l'aide de filtres avancés.

    • Fichier manifeste : créez un fichier manifeste et spécifiez son emplacement lorsque vous créez le job d'opérations de stockage par lot. Le fichier manifeste est un fichier CSV importé dans Google Cloud contenant la liste des objets à traiter. Chaque ligne du fichier manifeste doit inclure le bucket et le nom (name) de l'objet. Vous pouvez éventuellement spécifier la generation de l'objet. Si vous omettez la valeur generation, le job traite la version active de l'objet.

      Le fichier manifeste doit inclure une ligne d'en-tête au format suivant :

      bucket,name,generation

      Voici un exemple de fichier manifeste :

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

      Vous pouvez également créer un fichier manifeste à l'aide d'ensembles de données Storage Insights. Pour en savoir plus, consultez Créer un fichier manifeste à l'aide d'ensembles de données Storage Insights.

    • Préfixes d'objets : spécifiez une liste de préfixes pour filtrer les objets du bucket. Le job ne traite que les objets correspondant à ces préfixes. Si vous ne renseignez pas la liste des préfixes, le job traite tous les objets du bucket.

  • Type de job : les opérations de stockage par lot sont compatibles avec les types de jobs suivants, en exécutant un seul job par opération par lot.

    • Suppression d'objets : supprimez des objets d'un bucket pour optimiser les coûts, gérer le cycle de vie de vos données et respecter les règles de suppression des données.

    • Mises à jour des métadonnées : vous pouvez modifier les métadonnées d'objet suivantes :

      • Métadonnées personnalisées : vous pouvez mettre à jour toutes les paires clé/valeur définies par l'utilisateur associées à l'objet.

      • Métadonnées fixes : vous pouvez mettre à jour Cache-Control, Content-Disposition, Content-Encoding, Content-Language, Content-Type, Custom-Time et la configuration de conservation. Pour modifier les obligations de conservation d'objets, utilisez le type de job "Mises à jour des obligations de conservation d'objets".

    • Mises à jour des obligations de conservation d'objets : vous pouvez activer ou désactiver les obligations de conservation d'objets. Les obligations de conservation d'objets empêchent la suppression ou la modification des objets. Ces obligations de conservation sont essentielles pour la conformité et la conservation des données.

    • Mises à jour des clés de chiffrement d'objets : vous pouvez gérer les clés de chiffrement gérées par le client pour un ou plusieurs objets. Cette fonctionnalité inclut l'application ou la modification des clés de chiffrement à l'aide de la méthode de réécriture d'objet.

    • Mises à jour du contexte d'objet : gérez les contextes d'objet associés aux objets. Vous pouvez effacer tous les contextes d'objets existants ou effectuer des mises à jour spécifiques, par exemple en supprimant des clés ou en insérant et en mettant à jour des paires clé-valeur.

    • Mises à jour de la classe de stockage des objets : vous pouvez modifier la classe de stockage des objets de manière groupée pour optimiser les coûts.

    • Mises à jour de la liste de contrôle des accès (LCA) d'un objet : vous pouvez appliquer un correctif aux LCA d'un objet pour ajouter, mettre à jour ou supprimer des autorisations pour des entités telles que allUsers et allAuthenticatedUsers.

  • Dry run (facultatif) : utilisez le mode dry run pour éviter les erreurs de configuration accidentelles à grande échelle. Un dry run simule l'opération sans effectuer de transformations. Cette simulation vous aide à valider la configuration de votre job avant de l'exécuter. Les résultats du dry run fournissent un aperçu des détails suivants avant l'exécution du job :

    • Nombre d'objets affectés par le job.

    • Erreurs potentielles.

    • La taille totale des objets concernés, si vous filtrez par préfixes d'objets.

Tarifs

Pour estimer les frais de votre job ou de votre dry run, consultez les tarifs de Cloud Storage.

Vous pouvez utiliser une simulation pour valider votre configuration sans encourir de coûts d'exploitation, même si la simulation peut entraîner des coûts de listage d'objets.

Limites

Les opérations de stockage par lot sont soumises aux limites suivantes :

  • Les jobs d'opérations de stockage par lot ont une durée de vie maximale de 14 jours. Tout job en cours qui ne se termine pas dans les 14 jours suivant sa création est automatiquement annulé.

  • Vous pouvez inclure jusqu'à 1 000 préfixes d'objets dans un même job.

  • L'exécution de plus de 10 jobs simultanés sur le même bucket dégrade les performances de chaque job.

  • Vous pouvez exécuter un seul job par lot sur un maximum de 1 000 buckets dans un projet.

  • Les filtres de bucket et d'objet sont limités à 150 caractères chacun.

  • Les opérations de stockage par lot sélectionnent automatiquement l'heure de l'instantané de l'ensemble de données Storage Insights en fonction du fichier manifeste global. Cette sélection fait correspondre tous les buckets ciblés au même instantané pour la découverte d'objets. L'heure de l'instantané global sélectionné est renvoyée dans la réponse de l'API. Si l'instantané date de plus de deux jours, la création du job échoue. Pour savoir comment résoudre ce problème, consultez Résoudre les problèmes liés aux opérations de stockage par lot.

  • Les opérations de stockage par lot ne sont pas compatibles avec les buckets pour lesquels l'option Paiements par le demandeur est activée.

  • Lorsque vous utilisez des ensembles de données Storage Insights pour la sélection d'objets, les opérations de stockage par lot ciblent les objets actifs et actuels à partir de l'instantané de l'ensemble de données sélectionné.

Étapes suivantes