Upload Part (PUT uploadID) - Amazon S3 Glacier

Esta página destina-se somente a clientes atuais do serviço S3 Glacier que usam cofres e a API REST original de 2012.

Se você estiver procurando soluções de armazenamento de arquivos, sugerimos usar as classes de armazenamento do 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 do Amazon S3 Glacier e Noções básicas sobre as classes de armazenamento S3 Glacier para armazenamento de dados de longo prazo no Guia do usuário do Amazon S3. Essas classes de armazenamento usam a API do Amazon S3, estão disponíveis em todas as regiões e podem ser gerenciadas no console do Amazon S3. Elas oferecem análise de custos de armazenamento, Lente de Armazenamento, recursos avançados de criptografia opcionais 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:

  • SHA256 o hash da árvore não corresponde— Para garantir que os dados da peça não sejam corrompidos na transmissão, você calcula um hash da SHA256 árvore da peça e o inclui na sua solicitação. Ao receber os dados da peça, o S3 Glacier também calcula um SHA256 hash de árvore. Se os dois valores de hash não forem correspondentes, a operação vai falhar. Para obter informações sobre como calcular um hash de SHA256 árvore, consulteComputar somas de verificação.

  • SHA256 o hash linear não corresponde — Necessário para autorização, você calcula um hash SHA256 linear de toda a carga útil carregada e o inclui em sua solicitação. Para obter informações sobre como calcular um hash SHA256 linear, consulteComputar 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 em SHA256 árvore dos dados da peça (x-amz-SHA256-tree-hashcabeçalho), um hash SHA256 linear de toda a carga útil (x-amz-content-sha256cabeçalho), o intervalo de bytes (Content-Rangecabeçalho) e o comprimento da peça 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 AccountId valor é o Conta da AWS ID da conta proprietária do cofre. Você pode especificar uma Conta da AWS ID ou, opcionalmente, um único '-' (hífen). Nesse caso, o Amazon S3 Glacier usa Conta da AWS a ID associada à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.

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 SHA256 soma de verificação (um hash linear) da carga carregada. 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 SHA256 árvore dos dados que estão sendo carregados. Para obter informações sobre como calcular um hash de SHA256 árvore, consulteComputar 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.

Nome Descrição
x-amz-sha256-tree-hash

O hash da SHA256 árvore que o S3 Glacier calculou para a peça carregada.

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 carregar a próxima peça, o procedimento é o mesmo; no entanto, você deve calcular um novo hash de SHA256 árvore da peça que está carregando e também especificar um novo intervalo de bytes para indicar para onde a peça será colocada na montagem 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