En esta página, se analizan las cargas multiparte de la API de XML en Cloud Storage. Este método sube archivos en partes y, luego, los ensambla en un solo objeto mediante una solicitud final. Las cargas multiparte de la API de XML son compatibles con las cargas multipartes de Amazon S3.
Descripción general
Una carga multiparte de la API de XML te permite subir datos en varias partes y, luego, ensamblarlos en un objeto final. Este comportamiento tiene varias ventajas, en especial para archivos grandes:
Puedes subir partes de forma simultánea, lo que reduce el tiempo que lleva subir los datos en su totalidad.
Si una de las operaciones de carga falla, solo debes volver a subir una parte del objeto general, en lugar de reiniciarlo desde el principio.
Dado que el tamaño total del archivo no se especifica con anticipación, puedes usar las cargas multiparte de la API de XML para cargas de transmisión o a fin de comprimir datos sobre la marcha durante la carga.
Una carga multiparte de la API de XML tiene tres pasos necesarios:
Inicia la carga con una solicitud
POST
, que incluye especificar cualquier metadato que tenga el objeto completado. La respuesta muestra unUploadId
que usarás en todas las solicitudes posteriores asociadas a la carga.Sube los datos con una o más solicitudes
PUT
.Completa la carga con una solicitud
POST
. Esta solicitud reemplaza cualquier objeto existente en el bucket con el mismo nombre.
No hay límite para el tiempo que una carga multiparte y sus partes subidas pueden permanecer sin terminar o estar inactivas en un bucket.
- Las partes que se subieron correctamente se tienen en cuenta para el uso de almacenamiento mensual.
- Puedes evitar la acumulación de cargas multiparte abandonadas mediante la Administración del ciclo de vida de los objetos para quitar de forma automática las cargas multiparte cuando alcancen una antigüedad específica.
Consideraciones
Las siguientes limitaciones se aplican al uso de las cargas multiparte de la API de XML:
- Existen límites para el tamaño mínimo que puede ser una parte, el tamaño máximo que puede tener una parte y la cantidad de partes que se usan para ensamblar la carga completa.
- Las condiciones previas no son compatibles con las solicitudes.
- Los hashes de MD5 no existen para los objetos subidos que se usan con este método.
- Este método de carga no es compatible con Google Cloud Console o Google Cloud CLI.
Ten en cuenta lo siguiente cuando trabajes con cargas multiparte de la API de XML:
Las cargas multiparte de la API de XML tienen permisos de IAM específicos. Si usas roles personalizados de IAM, debes asegurarte de que tengan los permisos que necesitas.
Si bien puedes iniciar partes de carga y carga, la solicitud para completar la carga fallará si reemplazaría un objeto que tiene una conservación en ella o en una falta de cumplimiento período de retención.
Puedes enumerar las cargas en curso en un bucket, pero solo una carga completa aparece en la lista normal de objetos en el bucket.
Una parte que se subió puede estar sujeta a cargos de eliminación temprana si nunca se usa.
Cómo las bibliotecas cliente usan las cargas multiparte de la API de XML
En esta sección, se proporciona información sobre cómo realizar cargas multiparte de la API de XML con bibliotecas cliente que lo admiten.
Bibliotecas cliente
Java
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage Java.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
La biblioteca cliente de Java no es compatible con las cargas multiparte de la API de XML. En su lugar, usa cargas compuestas en paralelo.
Node.js
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage Node.js.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Puedes realizar cargas multiparte de la API de XML con el método uploadFileInChunks
. Por ejemplo:
Python
Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Storage Python.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Puedes realizar cargas multiparte de la API de XML con el método upload_chunks_concurrently
. Por ejemplo:
¿Qué sigue?
- Explora métodos de carga adicionales para Cloud Storage.
- Obtén información para saber cómo retirar la retirada exponencial y cuándo volver a realizar las solicitudes.