Lectures et téléchargements d'objets

Cette page traite des concepts liés à la lecture et au téléchargement d'objets dans Cloud Storage.

Lire des objets

La lecture d'un objet fait référence au streaming, à la consommation ou à l'inspection des données d'un objet ou d'une plage d'octets spécifique sur une connexion réseau ouverte directement en mémoire. Au lieu d'être enregistrée localement, la charge utile récupérée est éphémère et réside dans un flux de mémoire, un tampon ou un pipeline d'application, ou directement dans la mémoire du processeur/GPU. La lecture d'objets convient aux charges de travail hautes performances et à haut débit, telles que le streaming d'ensembles de données d'entraînement et de lots de Tensors dans des frameworks d'intelligence artificielle (IA) et de machine learning (ML) comme PyTorch ou Jax.

La liste suivante décrit les types de lectures d'objets disponibles dans Cloud Storage :

  • Lecture d'objets en mémoire ou lecture interactive d'objets : méthode dans laquelle les données sont consommées de manière interactive ou en mémoire. Le client récupère l'intégralité de l'objet et charge tous ses octets dans une variable contiguë, un tableau d'octets ou une chaîne en mémoire.

  • Lectures en flux continu : méthode consistant à consommer les données sous forme de flux d'octets directement à mesure qu'elles sont reçues du réseau, plutôt que d'attendre la fin du transfert complet.

Télécharger des objets

Le téléchargement d'un objet est une tâche de bout en bout qui transfère les données d'un objet depuis Cloud Storage vers un fichier persistant sur un système de fichiers local, un disque ou un périphérique de stockage cible. Contrairement aux lectures de flux en mémoire, le téléchargement englobe à la fois la récupération des octets distants et leur transfert vers le stockage local. Le téléchargement d'objets est principalement adapté à la gestion de fichiers à usage général, à l'archivage local, à la sauvegarde de données et à l'utilisation d'utilitaires hors connexion.

Lorsque vous utilisez des API REST, les téléchargements sont effectués à l'aide de requêtes GET HTTP ou HTTPS pouvant inclure un en-tête Range facultatif, qui définit une partie spécifique de l'objet à télécharger vers un stockage persistant ou local. Vous pouvez également utiliser l'en-tête Range pour reprendre les téléchargements interrompus. Lorsque vous utilisez gRPC, les téléchargements utilisent des flux storage.v2.Storage/ReadObject ou BidiReadObject.

La liste suivante décrit les types de téléchargements d'objets disponibles dans Cloud Storage :

  • Téléchargements simples : la forme la plus élémentaire de téléchargement d'objets. Le client envoie une seule requête pour récupérer l'intégralité de l'objet ou une plage d'octets spécifiée en un seul transfert continu.

  • Téléchargement d'objets en plusieurs parties : stratégie très performante dans laquelle un seul grand objet est divisé en plusieurs "parties" plus petites (également appelées "blocs"). Le client télécharge ces segments en parallèle à l'aide de plusieurs requêtes indépendantes et simultanées, puis les réassemble localement en un seul fichier.

Outils compatibles pour la lecture et le téléchargement d'objets

Console

Lorsque vous utilisez la console Google Cloud , vous pouvez effectuer les lectures et téléchargements d'objets suivants :

Ligne de commande

Vous pouvez effectuer les lectures et les téléchargements d'objets suivants lorsque vous utilisez la Google Cloud CLI :

Bibliothèques clientes

C++

Vous pouvez effectuer les types de lectures et de téléchargements suivants lorsque vous utilisez la bibliothèque cliente C++ :

C#

Vous pouvez effectuer les types de lecture et de téléchargement suivants lorsque vous utilisez la bibliothèque cliente C# :

Go

Vous pouvez effectuer les types de lecture et de téléchargement suivants lorsque vous utilisez la bibliothèque cliente Go :

Java

Vous pouvez effectuer les types de lectures et de téléchargements suivants lorsque vous utilisez la bibliothèque cliente Java :

Node.js

Vous pouvez effectuer les types de lecture et de téléchargement suivants lorsque vous utilisez la bibliothèque cliente Node.js :

PHP

Vous pouvez effectuer les types de lecture et de téléchargement suivants lorsque vous utilisez la bibliothèque cliente PHP :

Python

Vous pouvez effectuer les types de lecture et de téléchargement suivants lorsque vous utilisez la bibliothèque cliente Python :

Ruby

Vous pouvez effectuer les types de lecture et de téléchargement suivants lorsque vous utilisez la bibliothèque cliente Ruby :

API REST

Si vous utilisez des API REST pour télécharger des objets, consultez la section Points de terminaison de requêtes pour en savoir plus sur les points de terminaison de requête que vous pouvez utiliser.

API JSON

Vous pouvez effectuer les types de téléchargement suivants lorsque vous utilisez l'API JSON :

API XML

Vous pouvez effectuer les types de téléchargement suivants lorsque vous utilisez l'API XML :

Étapes suivantes