Possível duplicado:
maneira gratuita de compartilhar arquivos grandes pela Internet?
Quais são algumas opções para transferir arquivos grandes sem usar a Internet?
O laboratório da minha esposa está fazendo um projeto aqui nos EUA com colaboradores em Cingapura. Ocasionalmente, eles precisam transferir uma grande quantidade de dados de imagem de alta dimensão (~ 10 GB compactados) pelos continentes. Com as tecnologias atuais, qual seria uma boa solução para esse cenário de uso?
Posso pensar em alguns, mas nenhum deles parece ideal:
- Conexão direta via Internet: a taxa de transferência é de cerca de 500 KB / s, também sem uma ferramenta para lidar com erros / retransmissões.
- Faça o upload para um servidor ou serviço comum, como o Dropbox: é difícil fazer o upload para um colaborador que não seja dos EUA.
- Gravar discos ou copiar para HDs e enviar pelo Courier: a latência é significativa, além do trabalho extra para fazer uma cópia local.
Alguma sugestão?
Atualização: nenhuma das partes da colaboração é usuário experiente em tecnologia.
data-transfer
Frank
fonte
fonte
Respostas:
Eu sugiro que você use o rsync . O Rsync suporta o algoritmo de transferência delta; portanto, se seus arquivos forem alterados apenas parcialmente ou se a transferência anterior tiver sido encerrada de forma anormal, o Rsync é inteligente o suficiente para sincronizar apenas o que há de novo / alterado.
Existem várias portas do Rsync original para Windows e outros sistemas não compatíveis com Unix, gratuitos e não gratuitos. Consulte o artigo da Rsync Wikipedia para obter detalhes.
O Rsync sobre SSH é muito usado e funciona bem. Atualmente, 10 GB são uma quantidade relativamente pequena de dados e você não especificou o que "ocasionalmente" significa. Semanal? Diariamente? Por hora? Com uma taxa de transferência de 500 KB / s, levará cerca de 6 horas, não muito tempo. Se você precisar transferir os dados com frequência, provavelmente é melhor criar uma tarefa cron para iniciar o rsync automaticamente.
fonte
rsync
requer seu próprio protocolo para deltas, exigindo um sistema de contrapartida capaz do outro lado?rsync
algoritmo delta do funciona quando transfere dados compactados binários (.zip
ou.jpg
)?A conexão através da Internet pode ser uma opção viável e um programa como o bittorrent é exatamente adequado para esse propósito, pois divide os arquivos em partes lógicas a serem enviadas pela Internet para serem reconstruídas na outra extremidade.
O Bittorrent também oferece correção automática de erros, reparo de peças danificadas e, se mais pessoas precisarem dos arquivos, elas terão o benefício de poderem fornecer o arquivo a partir de tantas fontes quantas já tenham (partes) do arquivo baixado.
As pessoas reconhecidas o veem como uma boa maneira de baixar filmes e coisas do tipo, mas ele tem muito mais usos legais.
Muitos clientes bittorrent também possuem rastreadores incorporados, para que você não precise ter um servidor dedicado para hospedar os arquivos.
fonte
Divida o arquivo em pedaços de, por exemplo, 50 MB (usando, por exemplo
split
). Calcule somas de verificação para todos eles (por exemplomd5sum
). Faça o upload diretamente usando FTP e um cliente FTP tolerante a erros, comolftp
no Linux. Transfira todos os pedaços e um arquivo contendo todas as somas de verificação.No site remoto, verifique se todos os chunks possuem a soma de verificação desejada, reenvie os que falharam e remonte-os ao arquivo original (por exemplo, usando
cat
).Reverta a localização do servidor (postei com a premissa de que o site de destino forneceu o servidor e você iniciou a transferência localmente quando os arquivos estiverem prontos) conforme necessário. Seu cliente FTP não deve se importar.
Eu tive problemas semelhantes no passado e usando um cliente FTP tolerante a erros funcionou. Nenhum bit foi invertido, apenas interrupções regulares da conexão, para que eu pudesse pular a criação de trechos e apenas carregar o arquivo. Ainda fornecemos uma soma de verificação para o arquivo completo, apenas por precaução.
fonte
lftp
não anula uma transferência em andamento por qualquer motivo. Certifique-se de sempre ter espaço livre em disco suficiente no site de destino.Uma variação da resposta de Daniel Beck é dividir os arquivos em partes da ordem de 50 MB a 200 MB e criar arquivos de paridade para todo o conjunto.
Agora você pode transferir os arquivos (incluindo os arquivos de paridade) com FTP, SCP ou qualquer outra coisa para o site remoto e fazer uma verificação após a chegada de todo o conjunto. Agora, se houver peças danificadas, elas poderão ser corrigidas pelos arquivos de paridade, se houver blocos suficientes. Isso depende mais ou menos de quantos arquivos estão danificados e de quantos arquivos de paridade você criou.
Arquivos de paridade são muito usados na Usenet para enviar arquivos grandes. Na maioria das vezes, eles são divididos como arquivos RAR. Não é incomum enviar dados de até 50 a 60 GB dessa maneira.
Você definitivamente deve verificar o primeiro link e também pode dar uma olhada no QuickPar , uma ferramenta que pode ser usada para criar arquivos de paridade, verificar seus arquivos baixados e até restaurar arquivos danificados com os arquivos de paridade fornecidos.
fonte
É um arquivo grande de 10 GB? Poderia ser facilmente dividido?
Não brinquei muito com isso, mas me pareceu um conceito interessante e relativamente simples que pode funcionar nessa situação:
http://sendoid.com/
fonte
Disponibilize os dados via ftp / http / https / sftp / ftps (exigindo credenciais de logon) e use qualquer gerenciador de downloads no lado do cliente.
Os gerenciadores de download são projetados especificamente para recuperar dados, independentemente de quaisquer erros que possam ocorrer, para que eles se ajustem idealmente à sua tarefa.
Quanto ao servidor, um servidor FTP normalmente é o mais fácil de configurar. Você pode consultar uma lista na Wikipedia. HTTPS, SFTP e FTPS permitem criptografia (em FTP / HTTP puro, a senha é enviada em texto não criptografado), mas SFTP / FTPS são menos suportados pelo software cliente e a configuração do servidor HTTP / HTTPS é complicada.
fonte