Cette page décrit Rapid Bucket, une fonctionnalité qui vous permet de stocker des objets dans la classe de stockage Rapid en définissant une zone comme emplacement d'un bucket. Cette approche vous permet de colocaliser votre stockage de données avec vos ressources de calcul, ce qui offre une latence nettement inférieure et un débit plus élevé par rapport aux autres classes de stockage dans Cloud Storage. Les charges de travail d'autres zones et régions peuvent également accéder au bucket, avec des performances proportionnelles à la distance réseau. Le bucket Rapid est idéal pour vos applications les plus gourmandes en données, telles que l'IA/le ML et l'analyse de données.
Pour créer un bucket zonal à l'aide de Rapid Bucket, consultez Créer des buckets zonaux. Pour lire et ajouter des objets dans des buckets zonaux, consultez Utiliser des objets dans des buckets zonaux.
Terminologie des buckets Rapid
La documentation Cloud Storage utilise les termes suivants :
Bucket Rapid : produit qui permet de créer des buckets avec un emplacement zonal et la classe de stockage Rapid.
Stockage Rapid : classe de stockage qui offre les meilleures performances en termes d'accès aux données et d'opérations d'E/S dans Cloud Storage. Lorsque vous utilisez un bucket Rapid, vous créez un bucket qui utilise Rapid Storage. Pour en savoir plus sur le stockage Rapid, consultez Classes de stockage.
Bucket zonal : bucket situé dans une zone. Les objets des buckets zonaux sont toujours stockés dans un stockage rapide et peuvent être ajoutés.
Fonctionnalités des buckets zonaux
En plus d'offrir une faible latence et un débit élevé, les buckets zonaux vous permettent d'effectuer les opérations suivantes :
Ajouter des données aux objets du bucket zonal sans réécrire complètement les objets
Ouvrez des objets et conservez un flux lorsque vous effectuez des opérations, ce qui vous permet d'accélérer les lectures et les écritures ultérieures.
Cas d'utilisation
Les buckets Rapid sont plus adaptés aux charges de travail d'IA/ML ou à d'autres charges de travail nécessitant beaucoup de données. Voici quelques exemples de ces charges de travail : la création de points de contrôle, l'évaluation et la diffusion de modèles, ainsi que les files d'attente de journaux et de messages. Il peut également être utilisé pour diffuser des données ou pour fournir un espace de stockage pour les bases de données.
Pour profiter pleinement de la faible latence et du débit élevé fournis par Rapid Bucket, assurez-vous d'activer la connectivité directe gRPC.
Accès aux objets dans les buckets zonaux
Pour bénéficier des avantages en termes de performances d'un bucket zonal, assurez-vous d'ouvrir les objets pour le streaming et de maintenir un flux lorsque vous effectuez des opérations sur les objets. Lorsque vous établissez et maintenez un flux, vous pouvez effectuer des opérations de lecture ou d'écriture ultérieures sur l'objet avec une latence très faible. Par exemple, lors de la lecture d'un fichier Parquet, vous pouvez effectuer à la fois la lecture initiale des métadonnées du fichier (le pied de page) et la lecture ultérieure de lignes spécifiques dans une seule requête. Cette approche est plus efficace que l'utilisation de requêtes distinctes pour chaque étape.
Une fois établis, les flux d'objets restent ouverts par défaut lorsque vous accédez aux objets de buckets zonaux à l'aide de Cloud Storage FUSE ou des bibliothèques clientes Cloud Storage.
Vous pouvez ouvrir plusieurs flux de lecture vers un objet à partir d'un nombre illimité d'hôtes. Vous pouvez établir autant de flux de lecture que vous le souhaitez pour un objet.
Ajouter des objets
Vous pouvez ajouter des données aux objets dans les buckets zonaux. Lorsque vous ajoutez des éléments à des objets, la sémantique suivante s'applique :
Les objets pouvant être ajoutés apparaissent dans l'espace de noms du bucket dès que vous commencez à y écrire des données. Ils peuvent être lus pendant qu'ils sont en cours d'écriture.
Le nombre d'ajouts que vous pouvez effectuer à un objet ou le nombre d'octets que vous pouvez ajouter à la fois ne sont pas limités. Vous pouvez ajouter des données à un objet jusqu'à ce qu'il atteigne sa taille maximale de 5 Tio.
La taille d'un objet augmente en temps réel à mesure que de nouvelles données sont ajoutées ou vidées de manière permanente. Lorsque vous établissez un flux de lecture, vous devez vous attendre à un léger délai avant que la taille de l'objet ne soit mise à jour.
Les objets pouvant être ajoutés ne peuvent avoir qu'un seul rédacteur à la fois. Si un flux d'écriture est établi pour un objet qui en possède déjà un, Cloud Storage renvoie une erreur au flux d'origine, qui ne sera plus autorisé à écrire. Le nouveau rédacteur peut reprendre l'ajout à partir du dernier décalage persistant sans que d'autres ajouts soient entrelacés à l'objet.
Finaliser des objets
Une fois un objet finalisé, vous ne pouvez plus l'enrichir, mais vous pouvez toujours le remplacer par une nouvelle version. Les métadonnées d'un objet finalisé restent modifiables. Par exemple, de nouveaux tags peuvent être ajoutés et l'objet peut être renommé.
Installer des buckets zonaux
Vous pouvez installer des buckets zonaux et y accéder à l'aide de Cloud Storage FUSE ou du pilote CSI Cloud Storage FUSE. Veillez à utiliser Cloud Storage FUSE version 3.7.2 ou ultérieure. Pour utiliser le pilote CSI Cloud Storage FUSE, assurez-vous que votre version de Google Kubernetes Engine est 1.35.0-gke.3047001 ou ultérieure.
Tarifs
L'utilisation de Rapid Bucket entraîne des frais de stockage, d'opérations et de mise en réseau des données. Pour en savoir plus, reportez-vous à la page Tarifs.
Limites
L'espace de noms hiérarchique et l'accès uniforme au niveau du bucket doivent être activés pour les buckets zonaux.
Limites de Google Cloud CLI :
Visibilité des importations incomplètes : contrairement aux buckets des autres classes de stockage, où les objets n'apparaissent dans l'espace de noms qu'une fois l'importation terminée, les objets partiellement importés dans les buckets zonaux sont immédiatement visibles. Si une commande d'importation du Google Cloud CLI échoue ou est interrompue, des objets incomplets peuvent s'afficher dans votre bucket. Vous pouvez toujours reprendre ces importations en exécutant à nouveau la commande.
Écrasement d'objets : le comportement standard de la Google Cloud CLI s'applique aux buckets zonaux. Lorsque vous écrasez un objet, si un fichier ou un objet portant le même nom existe à la destination, les commandes
cp,mvetrsyncde la Google Cloud CLI l'écrasent par défaut. Pour éviter les écrasements, utilisez l'option--no-clobber. Lorsque vous utilisez Google Cloud CLI, l'ajout de données à un objet existant n'est pas pris en charge. L'intégralité de la source doit être réimportée.Finalisation des objets : les objets importés dans un bucket zonal à l'aide de Google Cloud CLI peuvent parfois subir un bref délai avant que les métadonnées de l'objet ne soient entièrement synchronisées. Étant donné que Cloud Storage utilise un modèle à cohérence finale, toute tentative de téléchargement d'un objet immédiatement après son importation peut entraîner une erreur d'incohérence de hachage si les métadonnées ne sont pas encore mises à jour.
Si un téléchargement échoue et affiche une erreur de hachage non correspondant peu de temps après une importation, réessayez la commande. Le système garantit que les téléchargements réussissent entièrement ou échouent de manière explicite. Les téléchargements partiels ou corrompus ne se produisent pas en silence.
Incompatibilités
Les buckets zonaux ne sont pas compatibles avec les outils, opérations et produits suivants :
Outils
Importations en plusieurs parties avec l'API XML
Écritures à l'aide de l'API XML ou de l'API JSON
Écritures pour les objets non ajoutables à l'aide de gRPC
Protection des données et reprise après sinistre
Gestion des versions des objets
Supprimer de façon réversible
Gestion des données
Cache Anywhere
Classe automatique
Verrou de bucket
Composer des objets
Obligations de conservation d'objets
Action
SetStorageClassde gestion du cycle de vie des objetsAction
Deletede gestion du cycle de vie des objetsVerrou de conservation des objets
Notifications Pub/Sub
Relocaliser des buckets
Importations avec reprise
Réécrire des objets
Paiements par le demandeur
Contrôle des accès
Listes de contrôle des accès (LCA) au niveau des objets
Configurations CORS
Clé de chiffrement fournie par le client (CSEK)
Clés HMAC
Quotas
Chaque zone par projet dispose d'un quota de stockage en octets. Chaque zone par projet dispose également d'un quota de sortie de Cloud Storage vers les services Google. Pour connaître la quantité de stockage ou de quota de sortie de données disponible, consultez la page Quotas et limites du système. Pour savoir comment demander une augmentation de quota, consultez Gérer vos quotas.
Bonnes pratiques
Pour optimiser les performances lorsque vous utilisez des buckets zonaux avec Cloud Storage FUSE, conservez un descripteur de fichier ouvert pour les objets montés et utilisez-le pour plusieurs opérations. Cela permet d'améliorer les performances, car Cloud Storage FUSE peut ainsi éviter d'effectuer des allers-retours réseau inutiles pour chaque lecture répétée.
Étapes suivantes
- Découvrez comment créer des buckets zonaux.
- Découvrez comment utiliser des objets dans des buckets zonaux.