Como fazer upload de arquivos grandes para o S3 em uma conexão inadequada?


9

Eu tenho um monte de arquivos (entre 500 MB e 7 GB) que eu preciso carregar em um bucket S3. Minha conexão é muito esquisita.

Tentei fazer o upload de um arquivo de 500 MB via, s3cmdmas o tempo limite expirou após ter sido 91% concluído (o que levou 16 horas)

O que eu tentei com o CyberDuck, mas o mesmo aconteceu. Ele falhou depois de aproximadamente 20% e, quando tentei tentar novamente a transferência, começou do zero. O CyberDuck deveria ter suporte multipart, mas acho que não ...

Eu poderia dividir os arquivos em arquivos menores como este: Como faço para dividir um arquivo .zip em vários segmentos? , mas prefiro não, a menos que seja minha única opção. Qual é um bom programa que eu posso usar que me permita enviar arquivos grandes para o S3 com suporte a currículo?

Respostas:


6

Eu apenas tentei usar o s3tools (s3cmd-1.5.0-rc1). Obtenha essa dica nas perguntas frequentes http://s3tools.org/kb/item13.htm . Ver abaixo.

O s3cmd suporta uploads com várias partes?

Sim, a versão mais recente do s3cmd suporta uploads multipartes do Amazon S3.

Uploads com várias partes são usados ​​automaticamente quando um arquivo a ser carregado é maior que 15 MB. Nesse caso, o arquivo é dividido em várias partes, com cada parte de 15 MB de tamanho (a última parte pode ser menor). Cada peça é carregada separadamente e depois reconstruída no destino quando a transferência é concluída.

Com esse novo recurso, se um upload de uma peça falhar, ele poderá ser reiniciado sem afetar nenhuma das outras partes já carregadas.

Existem duas opções relacionadas aos uploads com várias partes no s3cmd. Eles são:

--disable-multipart

Desativar uploads com várias partes para todos os arquivos

e

--multipart-chunk-size-mb = SIZE

Tamanho de cada pedaço de um upload com várias partes. Arquivos maiores que SIZE são automaticamente carregados como multithread-multipart; arquivos menores são carregados usando o método tradicional. SIZE está em mega-bytes, o tamanho padrão do bloco é 15 MB, o tamanho mínimo permitido do bloco é 5 MB e o máximo é 5 GB.

Então, quando carrego, escolho o menor tamanho de pedaço. Você deve ver abaixo a divisão e a retomada do upload.

$ s3cmd put --multipart-chunk-size-mb=5 some_video.mp4 s3://some_bucket/

some_video.mp4 -> s3://some_bucket/some_video.mp4  [part 1 of 52, 5MB]
 5242880 of 5242880   100% in  164s    31.08 kB/s  done
some_video.mp4 -> s3://some_bucket/some_video.mp4  [part 2 of 52, 5MB]
 5242880 of 5242880   100% in  193s    26.46 kB/s  done
some_video.mp4 -> s3://some_bucket/some_video.mp4  [part 3 of 52, 5MB]
 2023424 of 5242880    38% in  135s    14.59 kB/s^CERROR: 
some_video.mp4' part 3 failed. Use
  /usr/local/bin/s3cmd abortmp s3://some_bucket/some_video.mp4 XXX_SOME_HASH_XXX
to abort the upload, or
  /usr/local/bin/s3cmd --upload-id XXX_SOME_HASH_XXX put ...
to continue the upload.
See ya!

Então eu continuo.

/usr/local/bin/s3cmd --upload-id XXX_SOME_HASH_XXX put --multipart-chunk-size-mb=5 some_video.mp4 s3://some_bucket/

2

Acredito no Cyberduck na janela de transferências, você pode clicar com o botão direito e selecionar retomar.

Se isso não funcionar, o Cloudberry suporta a retomada de envios


Por algum motivo, no Cyberduck, meu currículo não funciona com a parte múltipla S3. Alguma dica?
f01 18/12/14

2

Você pode usar o FileZilla Pro para transferir arquivos de e para um bucket do S3. O FileZilla Pro suporta upload de várias partes e, em caso de falha, retomará a transferência.

Para os registros, ele vem com muitos outros recursos: suporte a arquivos grandes, transferências em massa, filtros, comparação de diretórios, pesquisa remota de arquivos, arrastar e soltar, configuração de limites de velocidade.

Sou membro da equipe do FileZilla Pro.

Saiba mais em https://filezillapro.com e em https://youtube.com/c/FileZillaPro


Observe que, se você é de alguma forma afiliado ao produto, deve divulgá-lo em sua resposta.
Confetti

Confetti @, desculpe, eu não sabia disso. Não encontrei nada específico na ajuda ou no código de conduta. Na verdade, eu assumi que era proibido. Adicionou a informação.
Josuegomes 23/11

Não tem problema, também não consigo encontrá-lo no texto de ajuda, talvez seja algo que os mods devam adicionar, mas é definitivamente permitido! Pode até ser melhor em geral, já que as pessoas sabem que podem pedir algo específico ao software nos comentários e receber uma resposta "oficial". :)
confetti
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.