Cargas y descargas

En esta página, se analizan conceptos relacionados con la carga y descarga de objetos. Puedes subir y almacenar cualquier tipo de MIME de datos de hasta 5 TiB.

Cargas

Puedes enviar solicitudes de carga a Cloud Storage de las siguientes maneras:

  • Carga en una sola solicitud. Un método de carga en el que un objeto se sube como una única solicitud. Úsala si el archivo es lo suficientemente pequeño para subirlo en su totalidad si la conexión falla. Consulta Sube objetos desde un archivo o Sube objetos desde la memoria para ver guías sobre las cargas de una sola solicitud.

  • Carga reanudable. Un método de carga que proporciona una transferencia más confiable, lo que es especialmente importante con archivos grandes. Las cargas reanudables son una buena opción para la mayoría de las aplicaciones, ya que también funcionan con archivos pequeños al costo de una solicitud HTTP adicional por carga. También puedes usar cargas reanudables para realizar transferencias de transmisión, lo que te permite subir un objeto de tamaño desconocido.

  • Carga multiparte de la API de XML. Un método de carga que es compatible con las cargas multiparte de Amazon S3. Los archivos se suben en partes y se organizan en un solo objeto con la solicitud final. Las cargas multiparte de la API de XML te permiten subir las partes en paralelo, lo que puede reducir el tiempo necesario para completar la carga general.

Con estos tipos de cargas básicas, se pueden realizar estrategias de carga más avanzadas:

  • Cargas compuestas en paralelo. Una estrategia de carga en la que fragmentas un archivo y los subes en paralelo. A diferencia de las cargas multiparte de la API de XML, las cargas compuestas paralelas usan la operación de composición y el objeto final se almacena como un objeto compuesto.

  • Carga de transmisión. Un método de carga que te permite subir datos sin necesidad de que los datos se guarden primero en un archivo, lo que es útil cuando no sabes el tamaño total al comienzo de la carga.

  • Carga de codificación de transferencia por fragmentos. Una carga de una sola solicitud que incluye el encabezado Transfer-Encoding: chunked, lo que permite que la carga se envíe en varios fragmentos de datos secuenciales.

Consideraciones sobre el tamaño de carga

Cuando elijas si deseas usar una carga de una sola solicitud en lugar de una carga reanudable o una carga multiparte de la API de XML, ten en cuenta la cantidad de tiempo que estás dispuesto perder si se produce un error de red y debes reiniciar la carga. Para conexiones más rápidas, el tamaño límite suele ser mayor.

Por ejemplo, supongamos que estás dispuesto a tolerar 30 segundos de tiempo perdido:

  • Si subes desde un sistema local con una velocidad de carga promedio de 8 Mbps, puedes usar cargas de solicitud única para archivos de hasta 30 MB.

  • Si subes un archivo desde un servicio en la región con una velocidad de carga promedio de 500 Mbps, el tamaño límite de los archivos es de casi 2 GB.

Descargas

Todas las descargas desde Cloud Storage tienen el mismo comportamiento básico: una solicitud HTTP o HTTP GET que puede incluir un encabezado Range opcional, que define una parte específica del objeto que se descargará.

Mediante este comportamiento de descarga básico, puedes reanudar las descargas interrumpidas y usar estrategias de descarga más avanzadas, como las descargas de objetos divididos y las descargas de transmisión.

Asistencia por herramienta

Console

Puedes realizar los siguientes tipos de cargas y descargas cuando usas la consola de Google Cloud:6

Línea de comandos

Puedes realizar los siguientes tipos de cargas y descargas cuando usas Google Cloud CLI:

Bibliotecas cliente

C++

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

C#

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

Go

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

Java

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

Node.js

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

PHP

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

Python

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

Ruby

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

Terraform

Puedes realizar cargas de una sola solicitud cuando usas Terraform. Las cargas reanudables se producen de forma automática cuando el archivo que se sube supera los 16 MiB.

API de REST

Si usas API de REST para subir y descargar contenido, consulta la sección Solicita extremos a fin de obtener un análisis completo sobre los extremos de solicitud que puedes usar.

¿Qué sigue?