Lecturas y descargas de objetos

En esta página, se analizan conceptos relacionados con la lectura y descarga de objetos en Cloud Storage.

Lectura de objetos

Leer un objeto se refiere a transmitir, consumir o inspeccionar datos de objetos o un rango de bytes específico a través de una conexión de red abierta directamente en la memoria. En lugar de guardarse de forma local, la carga útil recuperada es efímera y se encuentra en un flujo de memoria, un búfer, una canalización o directamente en la memoria de la CPU o la GPU de la aplicación. La lectura de objetos es adecuada para cargas de trabajo de alto rendimiento y con gran capacidad de procesamiento, como la transmisión de conjuntos de datos de entrenamiento y lotes de tensores en frameworks de Inteligencia Artificial (IA) y aprendizaje automático (AA), como PyTorch o JAX.

En la siguiente lista, se describen los tipos de lecturas de objetos disponibles en Cloud Storage:

  • Lectura de objetos en la memoria o lecturas interactivas de objetos: Es un método en el que los datos se consumen de forma interactiva o en la memoria. El cliente recupera el objeto completo y carga todos sus bytes en una variable contigua, un array de bytes o una cadena en la memoria.

  • Lecturas de transmisión: Es un método en el que los datos se consumen como un flujo de bytes directamente a medida que se reciben de la red, en lugar de esperar a que finalice toda la transferencia.

Descarga objetos

La descarga de un objeto es una tarea integral que transfiere datos de objetos de Cloud Storage a un archivo persistente en un sistema de archivos local, un disco o un dispositivo de almacenamiento de destino. A diferencia de las lecturas de transmisión en memoria, la descarga abarca la recuperación de los bytes remotos y su confirmación en el almacenamiento local. La descarga de objetos es adecuada principalmente para la administración de archivos de uso general, el archivado local, la copia de seguridad de datos y el uso de utilidades sin conexión.

Cuando se usan las APIs de REST, las descargas se realizan con solicitudes GET de HTTP o HTTPS que pueden incluir un encabezado Range opcional, que define una parte específica del objeto que se descargará en el almacenamiento persistente o local. También puedes usar el encabezado Range para reanudar las descargas interrumpidas. Cuando se usa gRPC, las descargas usan transmisiones storage.v2.Storage/ReadObject o BidiReadObject.

En la siguiente lista, se describen los tipos de descargas de objetos disponibles en Cloud Storage:

  • Descargas simples: Es la forma más básica de descarga de objetos. El cliente envía una sola solicitud para recuperar todo el objeto o un rango de bytes especificado en una transferencia continua.

  • Descargas de objetos divididos: Es una estrategia de alto rendimiento en la que un solo objeto grande se divide en varias "porciones" más pequeñas (también conocidas como "fragmentos"). El cliente descarga estos segmentos en paralelo con varias solicitudes independientes y simultáneas, y, luego, vuelve a ensamblar los segmentos de forma local en un solo archivo.

Compatibilidad de herramientas para leer y descargar objetos

Console

Cuando usas la consola de Google Cloud , puedes realizar las siguientes lecturas y descargas de objetos:

Línea de comandos

Puedes realizar las siguientes lecturas y descargas de objetos cuando usas Google Cloud CLI:

Bibliotecas cliente

C++

Puedes realizar los siguientes tipos de lecturas y descargas cuando usas la biblioteca cliente de C++:

C#

Puedes realizar los siguientes tipos de lecturas y descargas cuando usas la biblioteca cliente de C#:

Go

Puedes realizar los siguientes tipos de lecturas y descargas cuando usas la biblioteca cliente de Go:

Java

Puedes realizar los siguientes tipos de lecturas y descargas cuando usas la biblioteca cliente de Java:

Node.js

Puedes realizar los siguientes tipos de lecturas y descargas cuando usas la biblioteca cliente de Node.js:

PHP

Puedes realizar los siguientes tipos de lecturas y descargas cuando usas la biblioteca cliente de PHP:

Python

Puedes realizar los siguientes tipos de lecturas y descargas cuando usas la biblioteca cliente de Python:

Ruby

Puedes realizar los siguientes tipos de lecturas y descargas cuando usas la biblioteca cliente de Ruby:

API de REST

Si usas APIs de REST para descargar objetos, consulta la sección Solicita extremos para obtener un análisis completo sobre los extremos de solicitud que puedes usar.

API de JSON

Puedes realizar los siguientes tipos de descargas cuando usas la API de JSON:

API de XML

Puedes realizar los siguientes tipos de descargas cuando usas la API de XML:

¿Qué sigue?