jueves, 26 de mayo de 2011

Compre(n)sión de datos


Todo el mundo ha usado alguna vez un archivo comprimido, tanto para crearlo, o para descubrir su contenido.
El formato de compresión mas utilizado fue ZIP, que usaba diferentes algoritmos con diferente eficacia. El funcionamiento interno de los compresores es sencillo de entender:
Los archivos están compuestos por bits, y estos a veces se repiten.
Ejemplo de una cadena de bits
FRRRRRHHHHHHHAAAAAABSBSBGGGGGGHD
En el ejemplo superior, el programa compresor buscaría secciones en las que los bits se repitieran y reescribiría la cadena con el número de repeticiones y el bit afectado.


Volviendo al ejemplo, el resultado sería:
F5R7H6ABSBSB6GHD
La cantidad de bits se ha reducido a la mitad indicando la misma información. Ahora bien: estos algoritmos destacan por la rapidez, no por el ratio de compresión. El formato ZIP era utilizado para enviar documentos o imágenes por Internet, pero ahora que se utiliza para compartir películas enteras en alta definición, o juegos de PC de alta calidad gráfica, ZIP no servía de mucho. Una opción era dividir los archivos en diferentes partes sin comprimir, que se enviaban una a una. El siguiente paso fue comprimir las diferentes partes, y es ahí dónde entra en acción el formato RAR.

Este formato tiene buena calidad de compresión, y es el que ahora supera en usuarios a ZIP. Este formato comprime muy bien partes pequeñas pero pierde calidad al ser grandes, por eso se usa junto a archivos divididos.
Pero la compresión de datos no frena aquí, y se siguen creando formatos cada vez mas optimizados y con un ratio de compresión mas bajo. Este es el caso de UHARC y KGB.
UHARC fue el primero, y combinaba un ratio muy bajo y velocidad relativa, cuanto más espacio se gana, más recursos (RAM, CPU) son utilizados.

KGB, no es conocido, pero es el formato de compresión mas potente que existe. Configurado en su grado máximo de compresión, usa 1,5 Ghz, 1,5 Gb de RAM; con esta configuración consigue dejar 2Gigas de datos en 50Mb, eso sí, el tiempo de compresión puede llegar a mas de 2 horas.

Yo, por experiencia propia, uso y prefiero KGB. Creo que si vas a comprimir comprimes, y eso es lo que hace KGB. Tengo una biblioteca de e-Books, con 2000 títulos y 2Gb de datos, y KGB comprimió durante una hora y media y dejo toda la biblioteca en 75Mb.

Guillem Cruz, 3ºB

2 comentarios:

  1. La verdad es que más que WinZIp el programa que creo que todos tenemos instalado en nuestros ordenadores es WinRAR. La cantidad de opciones que tiene es superior, como por ejemplo poder dividir un fichero en las partes del tamaño que se te anotje es bastante util si estás siempre subiendo películas y esas cosas.

    ResponderEliminar
  2. Aunque no sea su principal objetivo, lo haze. Aunque casi todos los compresores tienen la posibilidad de hacerlo.

    ResponderEliminar