Início » Ciência » Um algoritmo ajudou o Dropbox a economizar vários petabytes de espaço

Um algoritmo ajudou o Dropbox a economizar vários petabytes de espaço

Lepton reduz o tamanho de imagens JPEG em 22%, sem perder nenhuma qualidade

Paulo Higa Por

O Dropbox armazena mais de 500 petabytes de dados em seus servidores, então qualquer algoritmo eficiente de compressão pode ajudar a economizar muito dinheiro. Esse é o caso do Lepton, tecnologia que permite reduzir o tamanho de imagens JPEG em 22%, de maneira rápida e sem gastar muitos recursos de hardware. O melhor: não há perda nenhuma de qualidade.

O Lepton foi desenvolvido pelo próprio Dropbox e aplicado em 16 bilhões de imagens até o momento, o que ajudou o serviço de nuvem a economizar “múltiplos petabytes de espaço”. As fotos mais antigas também estão sendo comprimidas com o novo algoritmo a uma velocidade considerável: num Intel Xeon E5–2650v2, é possível chegar a 5 MB/s em compressão e 15 MB/s em descompressão.

dropbox

E como funciona? As coisas são obviamente complexas, mas vamos tentar entender. Imagine que você tem uma foto JPEG. O algoritmo divide a imagem em vários blocos de 8x8 pixels (ou seja, são 64 pixels por bloco). Cada bloco é codificado com transformadas discretas de cosseno, muito utilizadas em algoritmos de compressão. Um dos 64 coeficientes (DC) representa o brilho do bloco, e os outros 63 (AC) guardam as informações detalhadas do bloco (a textura de um objeto, por exemplo).

No final das contas, “informações detalhadas” são apenas bits (no caso, cada coeficiente tem 10 bits). O Lepton varre o bloco em zigue-zague, desconsiderando tudo o que for zero, e guarda o tamanho binário dos coeficientes AC em unário (“2” é representado como 110, “5” é 111110 e assim por diante).

Depois, ele escreve “1” se o coeficiente for positivo ou “0” se for negativo. Por fim, o Lepton representa em binário o valor do coeficiente AC. Em binário, qualquer número acima de 0 começa com “1”, então o Lepton simplesmente omite esse “1” na hora de gravar. Pronto, economizamos dados aqui.

dropbox-lepton

E o coeficiente DC (de brilho), que normalmente é gravado antes dos AC na maioria dos formatos de imagem, fica gravado depois no Lepton. Como há muitos coeficientes AC no bloco, é possível prever qual será o DC. Então, o algoritmo só guarda a diferença entre o DC verdadeiro e o DC previsto pelo Lepton, o que também ajuda a reduzir o espaço ocupado. Boom! E isso é totalmente lossless, ou seja, dá para restaurar exatamente o JPEG original, bit por bit.

Para quem ficou curioso, os detalhes estão no blog de tecnologia do Dropbox. E se você não entendeu nada da explicação e nem quer entender, não tem problema: o que realmente importa é que o Dropbox abriu o código-fonte do Lepton nesta quinta-feira (14), o que significa que outras empresas poderão se beneficiar da tecnologia e aplicá-las em outros produtos que você utilize. O código pode ser baixado no GitHub.

Aliás, lembrei que estou com episódios atrasados de Silicon Valley.

Mais sobre: , ,

Comentários

Envie uma pergunta

Os mais notáveis

Comentários com a maior pontuação

Hemerson Silva
É de Deus!
Daniel Silva
Interessante, tem como executar isso duas vezes no mesmo arquivo?
Anthony Fernando
Não entendi nada mas, achei super interessante essa tecnologia.
Matheus Alexandre
nao so vc kkkkkkkkkkk
Caillou
do ponto de vista de usuário final, ainda acho o Caesium melhor pra compressão, testei o FileOptimizer e obtive melhores resultados no que citei antes
Yskar
RAPAZ, ISSO É COISA DO TREVOSO! Obrigado MESMO, não conhecia, otimizador lossless é sempre bem vindo.
Matheus
Lepton é loss-less e reversível. Isso quer dizer que eles armazenam um arquivo compactado, porém, contudo, entretanto, revertem para o arquivo original quando o usuário solicita. A parada aqui é muito mais sobre a ética de não mexerem nos arquivos dos usuários.
Carlos Henrique Cabral
Caesium?? Pfff, FileOptimizer - http://nikkhokkho.sourceforge.net/static.php?page=FileOptimizer
Mario Junior ?????????
Lixo de serviço é o Dropbox.
Victor C.
confesso que nao entendi porra nenhuma mas legal
Caillou
pq não conhecem o Caesium
Carlos Henrique Cabral
Espertos, trocaram Huffman por um algoritmo melhor do VP8. Mas ainda assim, acho que o resultado do PackJPG é melhor. Farei alguns testes.
Carlos Pacheco
Cara, esse negócio é satânico :P
Daniel Alencar
MELDELS! QUE GÊNIO QUEM CRIOU ISSO! https://uploads.disquscdn.com/images/3dedc9916c25f185d009b8c78cc98ee6b3f7aec8bb0db85cb5683e5749edfcf4.png
MacielLucas
Pied PIPPPPEEERRR
Pedro Barros
A mesma coisa qu pensei... Mas Vc foi ligeiro demais... Hahaha
Felipe Mesquita Ramos
Ja sabemos aonde aquele protótipo da caixa da Pied Piper foi parar