Upload Part (PUT uploadID) - Amazon S3 Glacier

Esta página é somente para clientes existentes do serviço S3 Glacier que usam o Vaults e o original de 2012. REST API

Se você estiver procurando por soluções de armazenamento de arquivamento, sugerimos usar as classes de armazenamento S3 Glacier no Amazon S3, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval e S3 Glacier Deep Archive. Para saber mais sobre essas opções de armazenamento, consulte Classes de armazenamento S3 Glacier e Armazenamento de dados de longo prazo usando classes de armazenamento S3 Glacier no Guia do usuário do Amazon S3. Essas classes de armazenamento usam o Amazon S3API, estão disponíveis em todas as regiões e podem ser gerenciadas no console do Amazon S3. Eles oferecem recursos como análise de custos de armazenamento, lente de armazenamento, recursos avançados de criptografia opcional e muito mais.

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Upload Part (PUT uploadID)

Descrição

Esta operação de multipart upload faz upload de uma parte de um arquivo. Você pode fazer upload de partes de arquivo em qualquer ordem porque, na solicitação Upload Part, especifica o intervalo de bytes no arquivo montado cujo upload será feito nessa parte. Você também pode fazer upload dessas partes em paralelo. Você pode fazer upload de até 10.000 partes de um multipart upload.

Para obter informações sobre o multipart upload, consulte Fazer upload de arquivos grandes em partes (Multipart Upload).

O Amazon S3 Glacier (S3 Glacier) rejeita a parte do upload se qualquer uma das seguintes condições for verdadeira:

  • Hash de árvore SHA256 não correspondente—Para garantir que dados da parte não sejam corrompidos na transmissão, você computa um hash de árvore SHA256 da parte e o inclui na solicitação. Mediante o recebimento dos dados da parte, o S3 Glacier também computa um hash de árvore SHA256. Se os dois valores de hash não forem correspondentes, a operação vai falhar. Para obter informações sobre como computar um hash de árvore SHA256, consulte Computar somas de verificação.

  • Hash linear SHA256 não correspondente—Obrigatório para autorização, você computa o hash linear SHA256 de toda a carga útil cujo upload foi feito e o inclui na solicitação. Para obter informações sobre como computar um hash linear SHA256, consulte Computar somas de verificação.

  • Tamanho da parte não correspondente—O tamanho de cada parte, exceto a última, deve corresponder ao tamanho especificado na solicitação Initiate Multipart Upload (POST multipart-uploads) correspondente. O tamanho da última parte deve ser igual a ou menor que o tamanho especificado.

    nota

    Se fizer upload de uma parte cujo tamanho seja menor que o tamanho especificado por você na solicitação de multipart upload de iniciação e que a parte não seja a última, a solicitação upload part será bem-sucedida. No entanto, a solicitação Complete Multipart Upload subsequente falhará.

  • Intervalo não alinhado—O valor do intervalo de bytes na solicitação não se alinha ao tamanho da parte especificado na solicitação de iniciação correspondente. Por exemplo, se você especificar um tamanho de parte de 4.194.304 bytes (4 MB), então, de 0 a 4.194.303 bytes (4 MB —1) e de 4.194.304 (4 MB) a 8.388.607 (8 MB —1) serão intervalos de partes válidos. No entanto, se você definir um valor de intervalo de 2 MB a 6 MB, o intervalo não se alinhará ao tamanho da parte, e o upload falhará.

Essa operação é idempotente. Se você fizer upload da mesma parte várias vezes, os dados incluídos na solicitação mais recente substituirão os dados cujo upload foi feito anteriormente.

Solicitações

Você envia essa solicitação PUT HTTP para o URI do ID de upload retornado pela solicitação Initiate Multipart Upload. O S3 Glacier usa o ID de upload para associar uploads de partes a um multipart upload específico. A solicitação deve incluir um hash de árvore SHA256 dos dados da parte (cabeçalho x-amz-SHA256-tree-hash), um hash linear SHA256 de toda a carga útil (cabeçalho x-amz-content-sha256), o intervalo de bytes (cabeçalho Content-Range) e o tamanho da parte em bytes (cabeçalho Content-Length).

Sintaxe

PUT /AccountId/vaults/VaultName/multipart-uploads/uploadID HTTP/1.1 Host: glacier.Region.amazonaws.com Date: Date Authorization: SignatureValue Content-Range: ContentRange Content-Length: PayloadSize Content-Type: application/octet-stream x-amz-sha256-tree-hash: Checksum of the part x-amz-content-sha256: Checksum of the entire payload x-amz-glacier-version: 2012-06-01

nota

O valor de AccountId é o ID de Conta da AWS da conta proprietária do cofre. Você pode especificar um ID de Conta da AWS ou, de forma opcional, um '-' (hífen) único; nesse caso, o Amazon S3 Glacier usa o ID de Conta da AWS associado às credenciais usadas para assinar a solicitação. Se você usar um ID de conta, não inclua nenhum hífen ('-') no ID.

Parâmetros de solicitação

Essa operação não usa parâmetros de solicitação.

Cabeçalhos de solicitação

Essa operação usa os seguintes cabeçalhos de solicitação, além dos cabeçalhos de solicitação que são comuns a todas as operações. Para mais informações sobre os cabeçalhos de solicitação comuns, consulte Cabeçalhos de solicitação comuns.

Name (Nome) Descrição Obrigatório
Content-Length

Identifica o tamanho da parte em bytes.

Tipo: string

Padrão: nenhum

Restrições: nenhuma

Não
Content-Range

Identifica o intervalo de bytes no arquivo montado cujo upload será feito nessa parte. O S3 Glacier usa essas informações para montar o arquivo na sequência apropriada. O formato desse cabeçalho segue RFC 2616. Um cabeçalho de exemplo é Content-Range:bytes 0-4194303/*.

Tipo: string

Padrão: nenhum

Restrições: o intervalo não pode ser maior que o tamanho da parte especificado por você quando iniciou o multipart upload.

Sim
x-amz-content-sha256

A soma de verificação SHA256 (um hash linear) da carga útil cujo upload foi feito. Ele não é o mesmo valor especificado por você no cabeçalho x-amz-sha256-tree-hash.

Tipo: string

Padrão: nenhum

Restrições: nenhuma

Sim
x-amz-sha256-tree-hash

Especifica um hash de árvore SHA256 dos dados cujo upload está sendo feito. Para obter informações sobre como computar um hash de árvore SHA256, consulte Computar somas de verificação.

Tipo: string

Padrão: nenhum

Restrições: nenhuma

Sim

Corpo da solicitação

O corpo da solicitação contém os dados cujo upload deve ser feito.

Respostas

Mediante um upload da parte bem-sucedido, o S3 Glacier retorna uma resposta 204 No Content.

Sintaxe

HTTP/1.1 204 No Content x-amzn-RequestId: x-amzn-RequestId Date: Date x-amz-sha256-tree-hash: ChecksumComputedByAmazonGlacier

Cabeçalhos de resposta

Uma resposta bem-sucedida inclui os seguintes cabeçalhos de resposta, além dos cabeçalhos de resposta que são comuns a todas as operações. Para mais informações sobre os cabeçalhos de resposta comuns, consulte Cabeçalhos de resposta comuns.

Name (Nome) Descrição
x-amz-sha256-tree-hash

O hash de árvore SHA256 computado pelo S3 Glacier para a parte cujo upload foi feito.

Tipo: string

Corpo da resposta

Essa operação não retorna um corpo de resposta.

Exemplo

A solicitação a seguir faz upload de uma parte de 4 MB. A solicitação define o intervalo de bytes para fazer dessa a primeira parte no arquivo.

Exemplo de solicitação

O exemplo envia uma solicitação PUT HTTP para fazer upload de uma parte de 4 MB. A solicitação é enviada para o URI do ID de upload retornado pela solicitação Initiate Multipart Upload. O cabeçalho Content-Range identifica a parte como a primeira parte dos 4 MB de dados do arquivo.

PUT /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1 Host: glacier.us-west-2.amazonaws.com Date: Wed, 10 Feb 2017 12:00:00 GMT Content-Range:bytes 0-4194303/* x-amz-sha256-tree-hash:c06f7cd4baacb087002a99a5f48bf953 x-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628 Content-Length: 4194304 Authorization: Authorization=AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20141123/us-west-2/glacier/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version,Signature=16b9a9e220a37e32f2e7be196b4ebb87120ca7974038210199ac5982e792cace

Para fazer upload da próxima parte, o procedimento é o mesmo; no entanto, você deve calcular um novo hash de árvore SHA256 da parte cujo upload está sendo feito e também especificar um novo intervalo de bytes onde a parte entrará no conjunto final. A solicitação a seguir faz upload de outra parte usando o mesmo ID de upload. A solicitação especifica os próximos 4 MB do arquivo após a solicitação anterior e um tamanho da parte de 4 MB.

PUT /-/vaults/examplevault/multipart-uploads/OW2fM5iVylEpFEMM9_HpKowRapC3vn5sSL39_396UW9zLFUWVrnRHaPjUJddQ5OxSHVXjYtrN47NBZ-khxOjyEXAMPLE HTTP/1.1 Host: glacier.us-west-2.amazonaws.com Date: Wed, 10 Feb 2017 12:00:00 GMT Content-Range:bytes 4194304-8388607/* Content-Length: 4194304 x-amz-sha256-tree-hash:f10e02544d651e2c3ce90a4307427493 x-amz-content-sha256:726e392cb4d09924dbad1cc0ba3b00c3643d03d14cb4b823e2f041cff612a628 x-amz-glacier-version: 2012-06-01 Authorization: Authorization=AWS4-HMAC-SHA256 Credential=AKIAIOSFODNN7EXAMPLE/20120525/us-west-2/glacier/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date;x-amz-glacier-version, Signature=16b9a9e220a37e32f2e7be196b4ebb87120ca7974038210199ac5982e792cace

O upload das partes pode ser feito em qualquer ordem; o S3 Glacier usa a especificação do intervalo para cada parte a fim de determinar a ordem na qual montá-las.

Exemplo de resposta

HTTP/1.1 204 No Content x-amzn-RequestId: AAABZpJrTyioDC_HsOmHae8EZp_uBSJr6cnGOLKp_XJCl-Q x-amz-sha256-tree-hash: c06f7cd4baacb087002a99a5f48bf953 Date: Wed, 10 Feb 2017 12:00:00 GMT