Compressão de dados

Julho 2015

Porquê comprimir os dados?

Hoje em dia, a potência dos processadores aumenta mais rapidamente do que as capacidades de armazenamento, e muito mais rapidamente do que a banda concorrida das redes, porque isto exige enormes mudanças nas infra-estruturas de telecomunicação.
Assim, para paliar esta falta, é corrente reduzir a dimensão dos dados explorando a potência dos processadores, em vez de aumentar as capacidades de armazenamento e transmissão dos dados.

O que é uma compressão de dados?

A compressão consiste em reduzir a dimensão física de blocos de informações. Um compressor utiliza um algoritmo que serve para optimizar os dados, utilizando considerações próprias ao tipo de dado a comprimir; um descompressor é por conseguinte necessário para reconstruir os dados originais graças ao algoritmo oposto do utilizado para a compressão.

O método de compressão depende intrinsecamente do tipo de dado a comprimir: não se comprimirá da mesma maneira uma imagem e um ficheiro áudio…

Caracterização da compressão

A compressão pode definir-se pelo quociente de compressão, ou seja, o quociente do número de bits na imagem comprimida pelo número de bits na imagem original.

A taxa de compressão, frequentemente utilizada, é a inversa do quociente de compressão, habitualmente é expresso em percentagem.


Por último, o ganho de compressão, igualmente expresso em percentagem, é o complemento a 1 da taxa de compressão

 

Tipos de compressões e de métodos


Compressão física e lógica


A compressão física age directamente sobre os dados; trata-se assim de ver os dados redundantes de uma cadeia de bits a outra.
A compressão lógica, em contrapartida, efectua-se por um raciocínio lógico, substituindo uma informação por uma informação equivalente.

Compressão simétrica e assimétrica

No caso da compressão simétrica, o mesmo método é utilizado para comprimir e descomprimir a informação, é necessário por conseguinte a mesma quantidade de trabalho para cada uma destas operações. É este tipo de compressão que é utilizado geralmente nas transmissões de dados.




A compressão assimétrica exige mais trabalho para uma das duas operações, procuramos frequentemente algoritmos para os quais a compressão é mais lenta que a descompressão. Algoritmos mais rápidos em compressão que em descompressão podem ser necessários quando se arquivam dados aos quais se acede raramente (por razões de segurança, por exemplo), porque isto cria ficheiros compactos.

Compressão com perdas

A compressão com perdas (em inglêslossy compression), por oposição à compressão sem perdas (lossy compression), permite eliminar algumas informações para ter a melhor taxa de compressão possível, conservando ao mesmo tempo um resultado que seja o mais próximo possível dos dados originais. É o caso, por exemplo, de certas compressões de imagens ou de sons, como o MP3 ou o formato Ogg Vorbis.

Já que este tipo de compressão suprime informações contidas nos dados a comprimir, fala-se geralmente de métodos de compressão irreversíveis.

Os ficheiros executáveis não podem, por exemplo, ser comprimidos de acordo com este tipo de método porque têm necessidade de conservar a sua integridade para funcionar. Com efeito, não é concebível reconstruir aproximadamente um programa omitindo bits ou acrescentando.

Em contrapartida, os dados multimédia (audio, vídeos) podem tolerar um certo nível de degradação sem que os captores sensoriais (olho, tímpano, etc.) distingam uma degradação significativa.

Codificação adaptativa, semi adaptativa e não adaptativa

Certos algoritmos de compressão baseiam-se em dicionários específicos para um tipo de dado: são codificadores não adaptativos. As ocorrências de letras num ficheiro de texto, por exemplo, dependem da língua na qual este está escrito.

Um codificador adaptativo adapta-se aos dados que vai comprimir, não parte com um dicionário já preparado para um tipo de dado.

Por último, um codificador semiadaptativo construi-lo-á em função dos dados a comprimir: constrói o dicionário percorrendo o ficheiro, e seguidamente comprime este último.

Para uma leitura offline, é possível baixar gratuitamente este artigo no formato PDF:
Compressao-de-dados .pdf

Veja também


Data compression
Data compression
La compresión de datos
La compresión de datos
Datenkomprimierung
Datenkomprimierung
Compression de données
Compression de données
Compressione di dati
Compressione di dati
Este documento, intitulado « Compressão de dados »a partir de CCM (br.ccm.net) está disponibilizado sob a licença Creative Commons. Você pode copiar, modificar cópias desta página, nas condições estipuladas pela licença, como esta nota aparece claramente.