Espace de noms hiérarchique

Cette page présente un aperçu de l'espace de noms hiérarchique, des principales fonctionnalités, des cas d'utilisation courants, des avantages et des limites à prendre en compte.

Présentation

L'espace de noms hiérarchique est une fonctionnalité offerte par Cloud Storage qui vous permet d'organiser des objets dans des dossiers. Avec l'espace de noms hiérarchique, vous pouvez stocker vos données dans une structure de système de fichiers logique. L'organisation de vos données dans une structure de système de fichiers améliore les performances, garantit la cohérence et simplifie la gestion des charges de travail intensives en données et orientées fichiers.

Les opérations de gestion des dossiers offrent des fonctionnalités de fiabilité et de gestion, y compris la création, la suppression, la liste et le renommage de dossiers. L'organisation hiérarchique des objets simplifie l'organisation des données et optimise les tâches de gestion des données. Un dossier d'un bucket avec un espace de noms hiérarchique activé peut contenir des objets, d'autres dossiers ou une combinaison des deux.

Vous devez choisir d'utiliser ou non un espace de noms hiérarchique lorsque vous créez le bucket. Le paramètre d'espace de noms hiérarchique de votre bucket ne peut pas être modifié une fois le bucket créé. Pour savoir comment activer l'espace de noms hiérarchique pour votre bucket, consultez Créer et gérer des buckets avec l'espace de noms hiérarchique activé.

Le schéma suivant montre un exemple de bucket avec un espace de noms hiérarchique activé, où les objets sont organisés dans une structure hiérarchique de dossiers.

Figure 1. Hiérarchie des buckets avec des dossiers et des objets
Figure 1. Hiérarchie des buckets avec des dossiers et des objets.

Principales fonctionnalités

L'espace de noms hiérarchique offre les fonctionnalités suivantes :

  • Nombre de requêtes par seconde (RPS) initial plus élevé: les buckets avec un espace de noms hiérarchique activé offrent des limites de RPS initiales jusqu'à huit fois plus élevées pour la lecture et l'écriture d'objets par rapport aux buckets sans espace de noms hiérarchique activé. Le RPS initial plus élevé facilite l'adaptation des charges de travail intensives en données et améliore le débit. Pour en savoir plus sur les méthodes d'optimisation des performances lorsque vous utilisez des dossiers dans des buckets avec l'espace de noms hiérarchique activé, consultez la section Gestion des dossiers.

  • Dossiers : les dossiers servent de conteneur pour les objets et les autres dossiers, et permettent d'effectuer des opérations telles que la création, la suppression et l'obtention de dossiers.

  • Renommer des dossiers : l'opération de renommage de dossiers vous permet de renommer de manière atomique le chemin d'accès d'un dossier et de ses dossiers sous-jacents sans supprimer d'objets. Cette technique est efficace et permet de gagner du temps, en particulier pour les dossiers volumineux contenant plusieurs objets.

  • Lister les dossiers : l'opération "Lister les dossiers" liste tous les dossiers du bucket ou sous un dossier spécifique pour vous aider à gérer et à comprendre la structure de vos données stockées dans un bucket.

Quand activer l'espace de noms hiérarchique pour votre bucket

Vous devez envisager d'activer l'espace de noms hiérarchique lorsque vous utilisez des applications qui s'attendent à une hiérarchie et à une sémantique semblables à celles d'un système de fichiers. L'espace de noms hiérarchique est utile pour les tâches à forte intensité de données, telles que les charges de travail d'analyse, d'IA et de ML. Voici quelques scénarios courants dans lesquels vous devriez envisager d'utiliser un espace de noms hiérarchique :

  • Traitement basé sur Hadoop : les charges de travail Hadoop et Spark s'appuient généralement sur une structure de stockage semblable à un système de fichiers et sur un système de dénomination basé sur le temps pour les fichiers et les dossiers. L'espace de noms hiérarchique s'intègre au connecteur Cloud Storage pour améliorer le débit et renommer les dossiers de manière atomique, ce qui améliore l'intégrité et la cohérence des données pour de nombreux pipelines de traitement des données.

  • Traitement des charges de travail axées sur les fichiers : les charges de travail telles que le traitement par lot des analyses, les services financiers ou le calcul hautes performances sont structurées en partitions basées sur une hiérarchie de dossiers et de fichiers. L'espace de noms hiérarchique permet de gérer ces environnements avec une API dédiée à la gestion des dossiers. De plus, l'espace de noms hiérarchique simplifie la gestion des dossiers contenant d'autres dossiers et objets. Avec une seule commande d'API, vous pouvez renommer rapidement un dossier et tout son contenu, ce qui vous fait gagner un temps et des ressources précieux.

  • Traitement de l'IA et du ML : les outils d'IA et de ML tels que TensorFlow, Pandas et PyTorch s'attendent à un accès et à une sémantique semblables à ceux d'un système de fichiers. L'espace de noms hiérarchique, en particulier lorsqu'il est associé à Cloud Storage FUSE, offre un débit accru et un accès efficace aux données. Par conséquent, l'espace de noms hiérarchique améliore les performances et la fiabilité de l'itération du modèle de ML.

Avant d'activer l'espace de noms hiérarchique pour votre bucket, vous devez prendre en compte les limites de l'espace de noms hiérarchique. Pour en savoir plus sur les limites des espaces de noms hiérarchiques, consultez la section Limites.

Avantages de l'espace de noms hiérarchique

Lorsque vous activez l'espace de noms hiérarchique pour vos buckets, vous pouvez effectuer les opérations suivantes :

  • Optimiser l'organisation : vous pouvez organiser vos données dans une structure de dossiers hiérarchique qui vous aide à gérer et à localiser des fichiers ou des ensembles de données.

  • Créer un écosystème semblable à un système de fichiers : l'espace de noms hiérarchique introduit des fonctionnalités semblables à un système de fichiers, telles que les dossiers, le changement de nom de dossier et la liste des dossiers, qui sont utiles pour les applications orientées fichiers, y compris l'écosystème Hadoop et les charges de travail d'IA et de ML.

  • Amélioration des performances : en adaptant les charges de travail gourmandes en données pour gérer un débit plus élevé, vous pouvez améliorer les performances globales de votre application.

Plates-formes compatibles

Les buckets avec espace de noms hiérarchique sont compatibles avec les fonctionnalités de la plate-forme Cloud Storage suivantes :

  • Toutes les API d'objets Cloud Storage et les fonctionnalités Cloud Storage les plus utilisées. Pour en savoir plus sur les fonctionnalités non compatibles, consultez la section Limites.

  • Transfert de données d'un bucket standard vers un bucket avec un espace de noms hiérarchique à l'aide du service de transfert de stockage.

  • Intégration aux produits suivants :

Compatibilité avec les opérations et fonctionnalités de Cloud Storage

Les buckets avec l'espace de noms hiérarchique activé interagissent avec les autres opérations Cloud Storage comme suit:

Opérations sur les objets

Les buckets avec l'espace de noms hiérarchique activé gèrent les opérations d'objet de différentes manières:

  • Les opérations telles que Upload, Rewrite et Compose créent automatiquement les dossiers parents manquants, à condition que vous disposiez des autorisations nécessaires. Par conséquent, vous n'avez pas besoin de créer des dossiers à l'avance avant d'importer des objets.
  • Bien que les dossiers puissent être créés automatiquement lors des opérations d'objet, vous devez les supprimer explicitement à l'aide de l'opération DeleteFolder.
  • Lorsque vous utilisez l'opération ListObjects avec le paramètre delimiter, les buckets renvoient chaque dossier enfant en tant que prefix.. Toutefois, les dossiers vides sont exclus par défaut. Pour inclure des dossiers vides, comme dans une liste de systèmes de fichiers typique, vous devez définir le paramètre includeFoldersAsPrefixes. Pour en savoir plus sur les méthodes d'optimisation des performances lors de la liste d'objets dans des buckets avec l'espace de noms hiérarchique activé, consultez Liste d'objets.

Opérations sur les dossiers gérés

Les buckets avec l'espace de noms hiérarchique activé gèrent les opérations de dossiers gérés de différentes manières:

  • Les buckets avec l'espace de noms hiérarchique activé offrent un contrôle précis des accès via des dossiers gérés. Pour gérer l'accès dans un dossier, vous devez créer un dossier géré portant le même nom que le dossier, puis y appliquer des stratégies IAM. Un dossier géré ne peut pas exister sans le dossier correspondant.
  • La création d'un dossier géré crée automatiquement les dossiers parents manquants, y compris le dossier portant le même nom.
  • La suppression d'un dossier entraîne automatiquement la suppression du dossier géré associé.
  • Renommer un dossier renomme automatiquement les dossiers gérés associés.
  • Les buckets avec un espace de noms hiérarchique doivent respecter les règles de dénomination des dossiers gérés et les règles de dénomination des dossiers. Bien que les noms de dossiers puissent être imbriqués sur 50 niveaux maximum, les noms de dossiers gérés ne peuvent être imbriqués que sur 15 niveaux maximum. La taille maximale du nom de dossier géré est limitée par la taille maximale du nom de dossier, qui est de 512 octets en UTF-8.

Opérations sur les buckets

Vous pouvez supprimer un bucket avec un espace de noms hiérarchique activé de la même manière que n'importe quel autre bucket. Si un bucket activé avec un espace de noms hiérarchique ne contient que des dossiers vides et aucun objet ni aucun dossier géré, il peut être supprimé.

Gestion du cycle de vie des objets

La gestion du cycle de vie des objets vous permet d'automatiser les actions sur les objets en fonction de conditions, telles que l'âge ou le préfixe. Toutefois, les règles de gestion du cycle de vie des objets peuvent se comporter différemment dans les buckets avec un espace de noms hiérarchique et dans les buckets avec un espace de noms plat en raison de l'opération RenameFolder:

  • Règles de gestion du cycle de vie des objets pour les buckets avec un espace de noms plat : l'opération de renommage consiste à renommer chaque objet à l'aide d'outils en copiant chaque objet vers un emplacement de destination et en supprimant l'objet d'origine de l'emplacement source. Par conséquent, de nouveaux objets sont créés avec de nouveaux temps de création à l'emplacement de destination. Si des règles de gestion du cycle de vie des objets basées sur l'âge sont appliquées pour l'emplacement de destination, elles ne s'appliquent pas immédiatement aux nouveaux objets, car leur heure de création est réinitialisée.

  • Règles de gestion du cycle de vie des objets pour les buckets avec l'espace de noms hiérarchique activé: le renommage d'un dossier s'effectue au niveau du dossier, sans avoir à renommer chaque objet. Par conséquent, l'heure de création des objets est conservée, ce qui signifie que les règles de gestion du cycle de vie des objets basées sur l'âge sont appliquées immédiatement aux objets renommés s'ils répondent aux critères d'âge.

Gérer des buckets avec l'espace de noms hiérarchique activé

Vous pouvez lister tous les buckets avec l'espace de noms hiérarchique activé, quel que soit leur mise en page de stockage. La mise en page de stockage d'un bucket décrit la manière dont les objets sont organisés dans un bucket, dans un espace de noms plat ou hiérarchique. Pour savoir comment afficher la mise en page de stockage d'un bucket, consultez Obtenir la mise en page de stockage d'un bucket. Pour répertorier tous les buckets, suivez les instructions détaillées dans Répertorier les buckets.

Vous pouvez supprimer un bucket avec un espace de noms hiérarchique activé de la même manière que n'importe quel autre bucket. À des fins de suppression, si un bucket avec un espace de noms hiérarchique activé ne contient que des dossiers vides et aucun objet ni aucun dossier géré, alors le bucket est considéré comme vide. Pour savoir comment supprimer des buckets, consultez la section Supprimer des buckets.

Tarifs

Pour en savoir plus sur les tarifs, consultez la page Tarifs de Cloud Storage.

Limites

Voici les limites de l'espace de noms hiérarchique :

  • Vous devez choisir d'utiliser ou non un espace de noms hiérarchique lorsque vous créez le bucket. Le paramètre d'espace de noms hiérarchique de votre bucket ne peut pas être modifié une fois le bucket créé.

  • Pour activer l'espace de noms hiérarchique, un bucket doit également activer l' accès uniforme au niveau du bucket.

  • Les fonctionnalités Cloud Storage suivantes ne sont pas compatibles avec les buckets qui utilisent un espace de noms hiérarchique:

    • Classe automatique
    • Verrou de bucket
    • Obligations de conservation d'objets
    • Verrou de conservation des objets
    • Gestion des versions des objets

Étape suivante

Faites l'essai

Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de Cloud Storage en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.

Profiter d'un essai gratuit de Cloud Storage