Finalización de una carga multiparte (POST uploadID) - Amazon Glacier

Esta página es solo para los clientes actuales del servicio Amazon Glacier que utilizan Vaults y la API de REST original de 2012.

Si busca soluciones de almacenamiento de archivos, se recomienda que utilice las clases de almacenamiento de Amazon Glacier en Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval y S3 Glacier Deep Archive. Para obtener más información sobre estas opciones de almacenamiento, consulte las clases de almacenamiento de Amazon Glacier.

Amazon Glacier (servicio original independiente basado en almacenes) ya no aceptará nuevos clientes a partir del 15 de diciembre de 2025, sin que ello afecte a los clientes actuales. Amazon Glacier es un servicio independiente con sus propias API que almacena datos en almacenes y es distinto de las clases de almacenamiento Amazon S3 y Amazon S3 Glacier. Sus datos actuales permanecerán seguros y accesibles en Amazon Glacier de forma indefinida. No hay que hacer migraciones. Para un almacenamiento de archivos a largo plazo y de bajo costo, AWS recomienda las clases de almacenamiento Amazon S3 Glacier, que ofrecen una experiencia del cliente superior con las API basadas en buckets de S3, Región de AWS disponibilidad total, costos más bajos e AWS integración de servicios. Si desea mejorar las capacidades, considere la posibilidad de migrar a las clases de almacenamiento de Amazon S3 Glacier mediante nuestra AWSGuía de soluciones para la transferencia de datos de los almacenes de Amazon Glacier a las clases de almacenamiento de Amazon S3 Glacier.

Finalización de una carga multiparte (POST uploadID)

Descripción

Puede llamar a esta operación de carga multiparte para informar a Amazon Glacier (Amazon Glacier) de que se han cargado todas las partes de archivo y de que Amazon Glacier ahora puede montar el archivo a partir de las partes cargadas.

Para obtener información sobre la carga multiparte, consulte Carga de archivos grandes por partes (carga multiparte).

Después de montar y guardar el archivo en el almacén, Amazon Glacier devuelve el ID de archivo del recurso de archivo creado recientemente. Tras cargar un archivo, debe guardar el ID de archivo devuelto para recuperar el archivo en otro momento.

En la solicitud, debe incluir el algoritmo hash en árbol SHA256 calculado de todo el archivo que ha cargado. Para obtener información acerca de cómo calcular un hash en árbol SHA256, consulte Cálculo de sumas de comprobación. En el servidor, Amazon Glacier también construye el algoritmo hash en árbol SHA256 del archivo montado. Si los valores coinciden, Amazon Glacier guarda el archivo en el almacén; de lo contrario, devuelve un error y se produce un error en la operación. La operación Enumeración de partes (GET uploadID) devuelve la lista de las partes cargadas para una carga multiparte específica. Incluye la información de suma de comprobación de cada carga parte que se puede usar para depurar un problema de suma de comprobación.

Además, Amazon Glacier también comprueba si faltan rangos de contenido. Al cargar las partes, especifique los valores de rango que identifican dónde encaja cada parte en el montaje final del archivo. Al montar el archivo final, Amazon Glacier busca si faltan rangos de contenido y, en caso de que falten, devuelve un error, por lo que no se realiza la operación de completar la carga multiparte.

La operación de completar carga multiparte es idempotente. Después de completar correctamente por primera vez la carga multiparte, si vuelve a llamar a la operación en un breve periodo, esta se realizará correctamente y devolverá el mismo ID de archivo. Esto resulta útil si tiene un problema de red o recibe un error de servidor 500, en cuyo caso puede repetir la solicitud de completar carga multiparte y obtener el mismo ID de archivo sin crear archivos duplicados. Sin embargo, tenga en cuenta que, después de que se complete la carga multiparte, no puede llamar a la operación de enumeración de partes y la carga multiparte no aparecerá en la respuesta de enumerar cargas multiparte aunque sea posible la realización idempotente.

Solicitudes

Para completar una carga multiparte, envíe una solicitud HTTP POST al URI del ID de la carga que Amazon Glacier ha creado en respuesta a la solicitud de inicio de carga multiparte. Es el mismo URI que ha usado al cargar las partes. Además de los encabezados obligatorios comunes, debe incluir el resultado del hash en árbol SHA256 de todo el archivo y el tamaño total del archivo en bytes.

Sintaxis

POST /AccountId/vaults/VaultName/multipart-uploads/uploadID Host: glacier.Region.amazonaws.com Date: date Authorization: SignatureValue x-amz-sha256-tree-hash: SHA256 tree hash of the archive x-amz-archive-size: ArchiveSize in bytes x-amz-glacier-version: 2012-06-01

nota

El valor AccountId es el ID de la Cuenta de AWS propietaria del almacén. Puede especificar un ID de Cuenta de AWS o, si lo desea, un solo carácter “-” (guion), en cuyo caso, Amazon Glacier usa el ID de la Cuenta de AWS asociada con las credenciales empleadas para firmar la solicitud. Si usa un ID de cuenta, no incluya ningún guion (“-”) en el ID.

Parámetros de la solicitud

Esta operación no usa parámetros de solicitud.

Encabezados de solicitud

Esta operación utiliza los siguientes encabezados de solicitud, además de los encabezados de solicitud comunes a todas las operaciones. Para obtener más información acerca de los encabezados de solicitudes comunes, consulte Encabezados de solicitudes comunes.

Nombre Descripción Obligatorio
x-amz-archive-size

El tamaño total, en bytes, de todo el archivo. Este valor debe ser la suma de todos los tamaños de las partes individuales que ha cargado.

Tipo: cadena

Valor predeterminado: None

Restricciones: ninguna

x-amz-sha256-tree-hash

El hash en árbol SHA256 de todo el archivo. Es el hash en árbol SHA256 de las partes individuales. Si el valor que especifique en la solicitud no coincide con el hash en árbol SHA256 del archivo montado final tal como lo ha calculado Amazon Glacier, este último devuelve un error y no se puede realizar la solicitud.

Tipo: cadena

Valor predeterminado: None

Restricciones: ninguna

Elementos de la solicitud

Esta operación no usa los elementos de la solicitud.

Respuestas

Amazon Glacier (Amazon Glacier) crea un hash en árbol SHA256 de todo el archivo. Si el valor coincide con el hash en árbol SHA256 de todo el archivo que ha especificado en la solicitud, Amazon Glacier agrega el archivo al almacén. En respuesta, devuelve el encabezado HTTP Location con la ruta URL del recurso de archivo agregado recientemente. Si el tamaño de archivo o SHA256 que ha enviado en la solicitud no coincide, Amazon Glacier devolverá un error y la carga permanece en estado incompleto. Es posible reintentar la operación de finalización de carga multiparte posteriormente con los valores correctos, en cuyo momento puede crear correctamente un archivo. Si no se completa una carga multiparte, Amazon Glacier reclamará finalmente el ID de carga.

Sintaxis

HTTP/1.1 201 Created x-amzn-RequestId: x-amzn-RequestId Date: Date Location: Location x-amz-archive-id: ArchiveId

Encabezados de respuesta

Una respuesta correcta incluye los siguientes encabezados de respuesta, además de los encabezados de respuesta comunes a todas las operaciones. Para obtener más información acerca de los encabezados de respuesta comunes, consulte Encabezados de respuesta comunes.

Nombre Descripción
Location

La ruta del URI relativo del archivo creado recientemente. Esta URL incluye el ID de archivo que Amazon Glacier ha generado.

Tipo: cadena

x-amz-archive-id

El ID del archivo. Este valor también forma parte del encabezado Location.

Tipo: cadena

Campos de respuesta

Esta operación no devuelve ningún cuerpo de respuesta.

Ejemplo

Solicitud de ejemplo

En este ejemplo, se envía una solicitud HTTP POST al URI que devolvió una solicitud de inicio de carga multiparte. La solicitud especifica el hash en árbol SHA256 de todo el archivo y el tamaño total del archivo.

POST /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1 Host: glacier.us-west-2.amazonaws.com z-amz-Date: 20170210T120000Z x-amz-sha256-tree-hash:1ffc0f54dd5fdd66b62da70d25edacd0 x-amz-archive-size:8388608 x-amz-glacier-version: 2012-06-01 Authorization: AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-date;x-amz-glacier-version,Signature=9257c16da6b25a715ce900a5b45b03da0447acf430195dcb540091b12966f2a2

Respuesta de ejemplo

En el siguiente ejemplo de respuesta se muestra que Amazon Glacier ha creado correctamente un archivo a partir de las partes que ha cargado. La respuesta incluye el ID de archivo con la ruta completa.

HTTP/1.1 201 Created x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q Date: Wed, 10 Feb 2017 12:00:00 GMT Location: /111122223333/vaults/examplevault/archives/NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId x-amz-archive-id: NkbByEejwEggmBz2fTHgJrg0XBoDfjP4q6iu87-TjhqG6eGoOY9Z8i1_AUyUsuhPAdTqLHy8pTl5nfCFJmDl2yEZONi5L26Omw12vcs01MNGntHEQL8MBfGlqrEXAMPLEArchiveId

Ahora puede enviar solicitudes HTTP al URI del recurso/archivo creado recientemente. Por ejemplo, puede enviar una solicitud GET para recuperar el archivo.