Como a versão dropbox / upload de arquivos grandes? [fechadas]

26

Eu tenho uma conta de caixa de depósito gratuita (2 GB) e fiquei me perguntando como funciona o controle de versão de arquivos grandes.

Eu tenho um backup completo de todos os meus webfiles que sites @ pouco mais de 1GB. Após o upload inicial de 1GB, toda vez que ele sincronizar, dropbox descobrirá o delta do arquivo, ou ele terá que fazer upload da coisa toda novamente para a versão?

Seria legal ter sempre uma versão atualizada de um arquivo grande, mas eu não quero matar minha largura de banda carregando 1 GB toda vez.

Isso é possível?

Obrigado,

    
por barfoon 11.08.2009 / 17:34

3 respostas

33

O Dropbox usa um algoritmo de diff binário para dividir todos os arquivos em blocos e fazer upload apenas de blocos que ainda não tem na nuvem. Tudo isso é feito localmente no seu computador.

O Dropbox não usa apenas os arquivos que você já enviou, ele agrega os arquivos de todos em um banco de dados de blocos e verifica cada hash de bloco local contra esse banco de dados.

Isso significa que, se alguém fez o upload do mesmo arquivo (por exemplo, o último ISO do Ubuntu), o upload parecerá instantâneo, pois não há nada para carregar, mas se você estiver atualizando um arquivo que muda regularmente , como o seu arquivo de backup, apenas as alterações são carregadas. Se você fizer o upload de um arquivo totalmente exclusivo, terá que esperar que tudo seja enviado.

    
por 11.08.2009 / 17:41
10

Por que vale a pena, o Dropbox afirma criar hashes em cada 4MB de cada arquivo. Dessa forma, se você alterar 2MB contíguos de um arquivo de 100MB, provavelmente será necessário fazer upload de apenas 4MB (ou 8MB se você passar para um segundo bloco de 4MB) para sincronizar novamente o arquivo.

The hashes we use are only for the 4MB file chunks

Fonte: link

    
por 17.01.2011 / 07:31
2

Também é importante destacar que ele não carrega todo o seu arquivo de uma só vez quando você o altera. Por exemplo, se você tem um peso de arquivo único de 2 GB, digamos que para uma unidade de disco criptografada (como quando você usa o truecrypt ou o pgpdisk) e você altera apenas alguns arquivos dentro do disco criptografado, o dropbox só carregará os blocos que efetivamente mudou. Assim, por exemplo, se você enviar seu arquivo pgpdisk com 2 GB para a caixa de depósito e, em seguida, alterar apenas 100 MB desse 2 GB, a caixa de depósito será inteligente o suficiente para detectar e atualizar somente o que mudou . Então você não desperdiça o upload de sua largura de banda para carregar coisas que já estão lá.

Outro recurso no qual eu vi a equipe de dropbox está trabalhando é fazer dropbox para detectar outras instâncias de dropbox em execução em sua rede local e sincronizar as informações entre elas. Por exemplo, você tem um laptop e uma área de trabalho, e ambos têm a mesma conta de caixa de depósito e os atualiza em sua área de trabalho - e a área de trabalho sincroniza instantaneamente com a "nuvem" - ao conectar seu laptop em vez de ir Na nuvem, o dropbox irá fazer o download do diff diretamente do seu computador de mesa e não desperdiçará sua largura de banda de download. Isso ainda está por vir - mas será um recurso interessante!

    
por 11.08.2009 / 19:48