Este trabalho analisa técnicas e ferramentas de compactação de dados, fundamentais diante do aumento exponencial dos volumes de dados trafegados e armazenados. Aborda técnicas orientadas a caracteres, como a supressão de caracteres nulos, codificação \textit{run-length} e codificação por mapeamento de \textit{bit}, progredindo para abordagens mais sofisticadas, como a compressão estatística, onde são destacadas as codificações de Shannon-Fano, Huffman e PPM (Previsão por correspondência parcial), e a compressão baseada em dicionário, com foco nas codificações LZ77, LZ78 e LZW, além de Burrows-Wheeler e \textit{move-to-front}, que organizam dados para compactação eficiente. O estudo revisa ferramentas populares (PKZip/Zip, Gzip, WinZip, JAR, RAR/WinRAR, 7-Zip, Bzip2, TAR), avaliando as técnicas utilizadas por elas, eficiências e aplicabilidade prática. Testes práticos foram realizados com arquivos de diferentes tamanhos e distribuições de diferentes de símbolos (uniforme, normal, Poisson, exponencial, constante e binomial) para analisar consumo de memória, taxa de compactação e tempo de execução de cada ferramenta nos cenários estabelecidos. O objetivo é oferecer um entendimento aprofundado das técnicas e ferramentas de compactação, examinando sua eficiência e contribuindo para o desenvolvimento de métodos mais eficazes, apoiando a escolha de ferramentas ideais para diferentes contextos. |