Complete Multipart Upload (POST uploadID) - Amazon S3 Glacier

Questa pagina è riservata ai clienti esistenti del servizio S3 Glacier che utilizzano Vaults e l'originale del 2012. REST API

Se stai cercando soluzioni di archiviazione, ti consigliamo di utilizzare le classi di storage S3 Glacier in Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval e S3 Glacier Deep Archive. Per ulteriori informazioni su queste opzioni di storage, consulta le classi di storage S3 Glacier e lo storage dei dati a lungo termine con le classi di storage S3 Glacier nella Amazon S3 User Guide. Queste classi di storage utilizzano Amazon S3API, sono disponibili in tutte le regioni e possono essere gestite all'interno della console Amazon S3. Offrono funzionalità come Storage Cost Analysis, Storage Lens, funzionalità di crittografia opzionali avanzate e altro ancora.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Complete Multipart Upload (POST uploadID)

Descrizione

Puoi chiamare questa operazione di caricamento in più parti per indicare ad Amazon S3 Glacier (S3 Glacier) che tutte le parti dell'archivio sono state caricate e che S3 Glacier può assemblare l'archivio con le parti caricate.

Per informazioni sul caricamento in più parti, consulta Caricamento in parti di archivi di grandi dimensioni (caricamento in più parti).

Dopo l'assemblaggio e il salvataggio dell'archivio nel vault, S3 Glacier restituisce l'ID archivio della risorsa di archivio creata. Dopo il caricamento di un archivio, è consigliabile salvare l'ID archivio restituito allo scopo di recuperare l'archivio successivamente.

Nella richiesta, devi includere la struttura hash SHA256 calcolata dell'intero archivio caricato. Per informazioni sul calcolo di una struttura hash SHA256, consulta Calcolo di checksum. Sul lato server, S3 Glacier crea anche la struttura hash SHA256 dell'archivio assemblato. Se i valori corrispondono, S3 Glacier salva l'archivio nel vault. In caso contrario, restituisce un errore e l'operazione non riesce. L'operazione List Parts (GET uploadID) restituisce un elenco delle parti caricate per uno specifico caricamento in più parti. Include le informazioni sul checksum per ogni parte caricata che può essere utilizzata per il debug di un errore di checksum.

Inoltre, S3 Glacier verifica se mancano degli intervalli di contenuto. Durante il caricamento delle parti, devi specificare i valori di intervallo che identificano la posizione di ogni parte nell'assemblaggio finale dell'archivio. Quando viene eseguito l'assemblaggio dell'archivio finale, S3 Glacier verifica se tutti gli intervalli di contenuto sono presenti. In caso contrario, S3 Glacier restituisce un errore e l'operazione Complete Multipart Upload non riesce.

L'operazione Complete Multipart Upload è idempotente. Dopo il primo completamento riuscito di un caricamento in più parti, se chiami di nuovo l'operazione dopo un breve periodo, l'operazione riesce e restituisce lo stesso ID archivio. Ciò è utile in caso di un problema di rete o di un errore di server 500, in quanto puoi ripetere la richiesta Complete Multipart Upload e ottenere lo stesso ID archivio senza creare archivi duplicati. Nota, tuttavia, che dopo il completamento del caricamento in più parti, non puoi chiamare l'operazione List Parts e il caricamento in più parti non apparirà nella risposta List Multipart Uploads, anche se un'operazione idempotente è possibile.

Richieste

Per completare un caricamento in più parti, devi inviare una richiesta HTTP POST all'URI dell'ID di caricamento che S3 Glacier ha creato in risposta alla tua richiesta Initiate Multipart Upload. Si tratta dello stesso URI che hai utilizzato durante il caricamento delle parti. Oltre alle intestazioni comuni richieste, devi includere il risultato della struttura hash SHA256 dell'intero archivio e la dimensione totale dell'archivio in byte.

Sintassi

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

Il valore AccountId è l'ID dell'Account AWS dell'account proprietario del vault. Puoi specificare l'ID dell'Account AWS o eventualmente un "-" (trattino), nel qual caso Amazon S3 Glacier utilizza l'ID dell'Account AWS associato alle credenziali utilizzate per firmare la richiesta. Se utilizzi un ID account, non includere alcun trattino ("-") nell'ID.

Parametri della richiesta

Questa operazione non utilizza parametri richiesta.

Intestazioni di richiesta

Questa operazione utilizza le seguenti intestazioni di richiesta, oltre alle intestazioni di richiesta comuni a tutte le operazioni. Per ulteriori informazioni sulle intestazioni richiesta comuni, consulta Intestazioni di richiesta comuni.

Nome Descrizione Obbligatorio
x-amz-archive-size

La dimensione totale in byte dell'intero archivio. Questo valore deve essere la somma di tutte le dimensioni delle singole parti caricate.

Tipo: string

Impostazione predefinita: nessuna

Vincoli: nessuno

x-amz-sha256-tree-hash

La struttura hash SHA256 dell'intero archivio. Si tratta della struttura hash SHA256 delle singole parti. Se il valore che specifichi nella richiesta non corrisponde alla struttura hash SHA256 dell'archivio assemblato finale come calcolata da S3 Glacier, S3 Glacier restituisce un errore e la richiesta ha esito negativo.

Tipo: string

Impostazione predefinita: nessuna

Vincoli: nessuno

Elementi della richiesta

Questa operazione non utilizza elementi di richiesta.

Risposte

Amazon S3 Glacier (S3 Glacier) crea una struttura hash SHA256 dell'intero archivio. Se il valore corrisponde alla struttura hash SHA256 dell'intero archivio specificato nella richiesta, S3 Glacier aggiunge l'archivio al vault. In risposta, restituisce l'intestazione HTTP Location con il percorso URL della risorsa di archivio appena aggiunta. Se la dimensione dell'archivio o la struttura hash SHA256 che hai inviato nella richiesta non corrisponde, S3 Glacier restituisce un errore e il caricamento non viene completato. È possibile riprovare l'operazione Complete Multipart Upload successivamente con valori corretti e riuscire a creare un archivio. Se un caricamento in più parti non viene completato, S3 Glacier recupera l'ID di caricamento.

Sintassi

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

Intestazioni di risposta

Una risposta corretta include le seguenti intestazioni di risposta, oltre alle intestazioni di risposta comuni a tutte le operazioni. Per informazioni sulle intestazioni di risposta comuni, consulta Intestazioni di risposta comuni.

Nome Descrizione
Location

Il percorso URI relativo dell'archivio creato. Questo URL include l'ID archivio generato da S3 Glacier.

Tipo: string

x-amz-archive-id

L'ID dell'archivio. Questo valore è incluso anche nell'intestazione Location.

Tipo: string

Campi di risposta

Questa operazione non restituisce un corpo della risposta.

Esempio

Richiesta di esempio

In questo esempio, la richiesta HTTP POST è inviata all'URI restituito da una richiesta Initiate Multipart Upload. La richiesta specifica la struttura hash SHA256 dell'intero archivio e la dimensione totale dell'archivio.

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

Risposta di esempio

L'esempio di risposta seguente mostra che S3 Glacier ha creato senza errori un archivio con le parti che hai caricato. La risposta include l'ID archivio con il percorso completo.

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

A questo punto puoi inviare le richieste HTTP all'URI della risorsa o dell'archivio aggiunto. Ad esempio, puoi inviare una richiesta GET per recuperare l'archivio.