Lectures et téléchargements d'objets

Cette page explique les 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, à l'utilisation 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. Plutôt que 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 d'application, un tampon, un pipeline ou directement dans la mémoire du processeur/GPU. La lecture d'objets est adaptée aux charges de travail hautes performances et à débit intensif, telles que la diffusion d'ensembles de données d'entraînement et de lots de tenseurs dans des frameworks d'intelligence artificielle (IA) et de machine learning (ML) tels que 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 lectures d'objets interactives : méthode par 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 la forme d'un flux d'octets directement à mesure qu'elles sont reçues du réseau, plutôt que d'attendre la fin du transfert.

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 en flux continu en mémoire, le téléchargement englobe à la fois la récupération des octets distants et leur enregistrement dans l'espace de 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 HTTP ou HTTPS GET qui peuvent inclure un en-tête Range facultatif, qui définit une partie spécifique de l'objet à télécharger sur un espace de 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 : forme la plus basique 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 hautes performances dans laquelle un seul objet volumineux est divisé en plusieurs "parties" plus petites (également appelées "fragments"). 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 dans un seul fichier.

Compatibilité des outils 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 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 lectures et de téléchargements suivants lorsque vous utilisez la bibliothèque cliente C# :

Go

Vous pouvez effectuer les types de lectures et de téléchargements 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 lectures et de téléchargements suivants lorsque vous utilisez la bibliothèque cliente Node.js :

PHP

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

Python

Vous pouvez effectuer les types de lectures et de téléchargements 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 l'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échargements suivants lorsque vous utilisez l'API XML :

Étapes suivantes