Algoritmos de compressão
Este artigo faz uma apresentação dos algoritmos de compressão e qual a lógica de funcionamento dos mesmos. É o primeiro de uma série de três artigos que pretendo escrever falando sobre isso, que serão divididos em como começou, o que usamos hoje em dia, e por último a prática com implementação dos mais usados.
Introdução
Você já pensou na quantidade de dado que é gerada todos os dias? Se já faz essa reflexão, pensou onde e como ficam armazenados estes dados? Você já deve ter visto em algum lugar analises sobre quantos dados são/foram gerados em um determinado tempo. Mas quem liga se a nuvem tem espaço ilimitado, certo? ERROU, claro que na teoria temos armazenamento ilimitado, mas na prática isso é impossível. Porém o armazenamento não é o único ponto crucial para a necessidade de compressão de arquivos, mas também o transporte de todos estes dados, e essas necessidades fez a área se expandir.
A ideia de escrever sobre isso veio em perceber a presença e importância da área junto com a pouca visibilidade recebida pelo tópico (mentira, veio após terminar a primeira temporada de Sillicon Valey, mas admitir isso iria soar meio infantil).
A compressão de dados pode ser feita de duas maneiras, direcionada ou bruta. Exemplos de compressão otimizadas são: arquivos de áudio onde são cortados sons que não diferenciamos, nas imagens, "arredondando" o que não enxergamos e em vídeos mantendo partes de frames que não se alteram. Claro que cada área tem sua compressão específica onde há todo uma demanda de estudo, e por isso não será o foco deste primeiro artigo. O ponto chave aqui será a codificação dos dados de forma bruta.
Boa parte do conteúdo esta [link 1]nesta série[/link 1] de vídeos de autoria da Google. Portanto a maior parte das coisas será uma aprofundamento do que se vê nos vídeos da série (que por sinal são muito recomendados).
O artigo será comprido então para fazer máximo proveito recomendo que tire X minutos para conseguir ler, consultar fontes e fazer um bom aproveitamento.
A ideia de escrever sobre isso veio em perceber a presença e importância da área junto com a pouca visibilidade recebida pelo tópico (mentira, veio após terminar a primeira temporada de Sillicon Valey, mas admitir isso iria soar meio infantil).
A compressão de dados pode ser feita de duas maneiras, direcionada ou bruta. Exemplos de compressão otimizadas são: arquivos de áudio onde são cortados sons que não diferenciamos, nas imagens, "arredondando" o que não enxergamos e em vídeos mantendo partes de frames que não se alteram. Claro que cada área tem sua compressão específica onde há todo uma demanda de estudo, e por isso não será o foco deste primeiro artigo. O ponto chave aqui será a codificação dos dados de forma bruta.
Boa parte do conteúdo esta [link 1]nesta série[/link 1] de vídeos de autoria da Google. Portanto a maior parte das coisas será uma aprofundamento do que se vê nos vídeos da série (que por sinal são muito recomendados).
O artigo será comprido então para fazer máximo proveito recomendo que tire X minutos para conseguir ler, consultar fontes e fazer um bom aproveitamento.