CriticalErr0r Posted October 16, 2013 Report Share Posted October 16, 2013 Hola a todos mis amigos foreros, bueno en esta ocasion les traigo esta guía definitiva sobre los compresores y los formatos de compresión más conocidos, eficientes, populares y desconocidos del panorama.En la informática, existe un mundo apasionante que con el tiempo se ha convertido en algo muy común y corriente en el día a día: la compresión de archivos. Debido a las altas tasas de compresión de los formatos de hoy en día, la rápida velocidad de los compresores y la comodidad del almacenamiento de varios archivos y carpetas en un sólo archivo, se utiliza frecuentemente para organizar información y a la vez ahorrar espacio en disco. A grandes rasgos, el mundo de la compresión de datos se suele dividir en dos grandes grupos: La compresión con pérdidas (lossy): Aquella que se efectua eliminando información prescindible. Muchos formatos ya aplican compresión. Por ejemplo, en los archivos JPG se reduce la calidad y nitidez de la fotografía a cambio de conseguir un tamaño de archivo más pequeño. Por su parte, en los archivos MP3 se reduce el tamaño del archivo a cambio de eliminar frecuencias que el oído humano no escucha.La compresión sin pérdidas (lossless): Aquella que se efectúa creando una réplica, donde la información repetida estará organizada de forma que, posteriormente, se podrá volver a recrear el archivo original a partir de ella. Un claro ejemplo es la optimización de archivos PNG o los formatos de compresión de los que hablaremos en este artículo. Algoritmos de compresión Inicialmente, cada formato de compresión estaba diseñado para seguir un determinado algoritmo de compresión. Actualmente, la mayoría de los formatos pueden utilizar diferentes algoritmos. Por ejemplo, varios programas permiten comprimir en formato ZIP pudiendo elegir algoritmo LZMA, deflate o bzip2. Esto también explica por qué algunos compresores comprimen (en formato ZIP, por ejemplo) y los archivos no son reconocidos por otros compresores. En la imagen anterior, se puede ver el funcionamiento de uno de los ejemplos más básicos de compresión, el algoritmo run-length encoding, utilizado en viejos formatos gráficos como PCX. Factores importantes Cuando hablamos de un buen compresor de archivos, debemos basarnos en 3 factores principales (no sólo en el tamaño): Tasa o ratio de compresión: Obviamente, cuando más pequeño sea el archivo comprimido, mejor es el compresor.Velocidad de compresión: Cuanto menos tarde en realizar la compresión, mejor. También es importante la velocidad de descompresión, que se suele tener en cuenta a parte.Memoria RAM utilizada: Otro factor importante es la cantidad de memoria que necesitamos para realizar la descompresión (ver punto 4). Al final del artículo incluyo varias tablas comparativas para echar un vistazo a los compresores que muestran mejor rendimiento teniendo en cuenta estos factores.La mayoría de los usuarios puede que sólo conozca los formatos más comunes (ZIP, RAR, ACE...), pero existen muchísimos formatos de compresión destinados al almacenamiento de archivos. Vamos a separarlos en grupos... 1. Los clásicos (las caras conocidas) Probablemente, el formato más conocido sea el ZIP, debido a que, a pesar de ya estar bastante extendido, Microsoft lo incorporó de serie en Windows XP como Carpeta comprimida. Formato .ZIP El formato ZIP tiene una triste historia. Originalmente, este formato fue desarrollado por Phil Katz, mediante su famosa utilidad para MSDOS PKZip. Sin embargo, el origen de este formato siempre estuvo marcado por la controversia. Antes de PKZip, pasó por otros nombres como PKPAK y PKARC, este último en referencia a ARC, otro conocido compresor de los años 80, de Thom Henderson. Thom demandó a Phil, argumentando que PKARC era un plagio de ARC, sólo que era mucho más rápido porque Phil lo tradujo a lenguaje ensamblador. Efectivamente, se encontraron en el código fuente de PKARC comentarios prácticamente idénticos a los de ARC, incluso las mismas faltas de ortografía. Aunque Thom ganó el juicio, no le sirvió de mucho. Phil haría algunas modificaciones y PKZip (debido a su mejor rendimiento) ya era el programa más popular y extendido. Años más tarde, Phil Katz moriría debido a sus problemas con el alcohol. Formato .ZIPX Uno de los programas que más popularizaron el formato ZIP fue WinZip. Phil Katz no era amigo del sistema Windows, por lo que le tomaron ventaja. Más tarde, en WinZip 12 se introdujo el formato ZIPX que no es más que el formato ZIP con distintos algoritmos de compresión (BZip, LZMA, PPMd, JPEG y WAVPack). WinZip (Shareware) BandiZip permite comprimir en zip, zipx, tar.gz, lzh y 7z. Una de las alternativas gratuitas a WinZIP es BandiZip, el cuál permite varios formatos de compresión actuales y tiene versión para 64 bits. BandiZip Archiver (Freeware) Existen muchos formatos que realmente son archivos ZIP renombrados con otra extensión, como por ejemplo, los archivos JAR (Java), APK (aplicaciones Android), CBZ (Comics) o el formato EPA (Elige tu propia aventura). Formato .RAR Otro de los titanes indiscutibles en el mundo de la compresión fue el formato RAR. A pesar de mejorar sustancialmente la compresión de ZIP, siempre se mantuvo a la sombra del formato ZIP en la época del MSDOS, hasta la actualidad, donde WinRAR lo propulsó hasta convertirse en uno de los más populares. WinRAR (Shareware)] HaoZip permite comprimir en zip, 7z, tar.gz, tar.bz, tar.xz y lzh. Existen dos clones de WinRAR gratuitos destacables. El primero de ellos, HaoZip, un compresor chino que tiene prácticamente la misma interfaz, pero con funcionalidades mejoradas y ampliadas. Destaca por la gran cantidad de algoritmos que permite: la compresión zip permite algoritmos como (deflate, deflate64, bzip2 y LZMA), la compresión 7z (LZMA, LZMA2, PPMd, bzip2) y la compresión lzh (lh5, lh6, lh7). Además, también incorpora varias utilidades externas interesantes, como un conversor de imágenes o un programa para montar unidades virtuales. HaoZip Archiver (Gratuito) El segundo de ellos, KuaiZip, también chino, un poco más básico que el anterior, pero con su propio formato KZ de compresión, además de permitir comprimir en zip y 7z. KuaiZip Compressor (Gratuito) Formato .CAB Aunque para instalaciones y un público más reducido, Microsoft tiene su propio formato de compresión: CAB o Cabinet. Aunque no mucha gente la conoce, existe una herramienta en Windows llamada IExpress que no es más que un interfaz gráfico del comando makecab, que permite crear archivos CAB o, incluso, sencillos programas de instalación. Sin embargo, las tasas de compresión de CAB suelen ser bajas. Combinación de teclado Win + R / iexpress Formato .ACE Quizás, otro de los formatos más conocidos fue el formato ACE, el cuál superaba (en su momento) los ratios de compresión de RAR. Desgraciadamente, su apuesta por ser un formato privativo (junto a su escasa innovación y renovación del formato y programa), poco a poco lo han ido sumiendo en el olvido. WinACE (Shareware) Formato .LZH LHA fue distribuido como código abierto desde sus primeros años, cuando luchaba por ganar terreno contra el ARJ en plataformas MS-DOS. Aunque el formato LZH/LHA de Haruyasu Yoshizaki se puede considerar como un formato olvidado, este formato sigue siendo muy popular en Japón y varios de los programas mencionados en este artículo permiten comprimir con él. De hecho, en la versión japonesa de Windows 7, se incorpora un complemento para utilizar los archivos LZH como carpetas comprimidas. WinLZH comprime en 7z, cab, lzh, pak, paq8p, rar, uha y zip. WinLZH, un programa realizado por Testaware, un grupo de la demoscene, permite comprimir en este formato (junto a varios otros), además de varias opciones adicionales mediante una interfaz un tanto rústica. WinLZH (Gratuito) Formato .SITX Por último, no nos olvidemos del formato SITX (que no Sith), utilizado en sistemas de Apple por la empresa Smith Micro Software en su programa Stuffit. Stuffit (Shareware) 2. Los desconocidos (formatos misteriosos) Pero además de los formatos clásicos, existen varios formatos de compresión no tan extendidos y conocidos que tienen muy buenos ratios de compresión, algunos mejorando a los alcanzados por RAR. Formato .ALZ AlZip es un compresor coreano que se creó en base a la frustración local por tener que utilizar el idioma inglés de WinZip. Poco más tarde, incluirían el formato propio ALZ.La interfaz del programa permite realizar las tareas más comunes en este tipo de aplicaciones. Destaca también la utilización de unos iconos animados con su mascota, un huevo con ojos que hace referencia a su segundo formato de compresión. AlZip permite comprimir en alz, egg, zip, tar.gz, tar.bz y lzh. Aunque tuvo bastantes cambios, el programa actualmente es gratuito (tiene un serial en su página disponible para cualquier usuario). AlTools AlZip (Gratuito, Freeware) Formato .EGG Como se contaba en el apartado anterior, AlZip incorpora un segundo formato propio, el formato EGG (huevo), que analiza los tipos de ficheros a comprimir, para aplicarles el mejor método de compresión. Formato .UHA Otro formato, quizás de los más conocidos de esta categoría es UHArc, el cuál suele tener un buen rendimiento de compresión y posee una interfaz gráfica, llamada WinUHA. WinUHA, en Lo4d.com. Formato .NZ Uno de los compresores que suele liderar las tablas comparativas de compresores es NanoZip. A pesar de ser un compresor aún experimental, sus resultados suelen ser siempre muy buenos. NanoZip, diseñado para comprimir exclusivamente con su formato NZ. NanoZip (experimental) Otros formatos Existen muchos otros formatos desconocidos dignos de mención, como por ejemplo CCM, FLZ de FlashZip o DGCA, los cuales consiguen generalmente buenas tasas de compresión y rendimiento. 3. Los olvidados (abuelos cuenta-batallitas) Existen varios formatos que se pueden considerar como obsoletos, ya que o no poseen interfaz gráfica y han dejado de utilizarse o han sido reemplazados por otros compresores mejores. Aún así, comentaré brevemente los más relevantes. Formato .ARJ Quizás el más famoso de esta categoría sea ARJ. Se popularizó bastante en la época de MS-DOS (debido a su soporte multivolumen que permitía guardar en varios diskettes), pero sufrió la extensión masiva de PKZip, que acabó reemplazándolo. ARJ 2.30 para MS-DOS, de Robert K. Jung Formato .AIN Otro compresor muy utilizado en la época de MSDOS fue AIN Archiver, de Transas Marine, el cual mejoraba los ratios de compresión de ARJ (no siempre). Formato .ZOO Otro de los clásicos de mediados de los 80 fue el formato ZOO, aún soportado como lectura en algunos programas de compresión. Fue desarrollado por Rahul Dhesi y se basaba en el algoritmo LZW de compresión. Formato .ACB Por último, otro de los compresores que quizás te podrían sonar, fue el ACB, de George Buyanovsky. Conseguía muy buenos resultados, a cambio de un tiempo de compresión bastante superior. 4. Los gigantes (pesos pesados) Antes de comenzar el artículo, comentaba que uno de los factores importantes a tener en cuenta es el del uso de la memoria RAM del equipo. Los compresores de este apartado se basan en ese punto. Consiguen unas tasas de compresión increíblemente buenas (comparadas con otros), sin embargo el nivel de recursos (tanto memoria RAM como tiempo de compresión, o incluso descompresión) suele ser muy exigente. Formato .PAQ Este formato, de código abierto, es uno de los que consiguen ratios de compresión más altos, y se han creado multitud de forks utilizando PAQ como base. La mayoría de los formatos comentados a continuación en este grupo, parten de una base de PAQ. Dos implementaciones podrían ser FrontPAQ y ZPAQ. El primero de ellos no necesita instalación, permite comprimir y descomprimir archivos desde Windows simplemente arrastrándolos hasta su icono. Se basa en PAQ8P, de Andreas Morphis. El segundo es un compresor en línea de comandos. FrontPAQ (Gratuito, código abierto)ZPAQ Formato .RK WinRK utiliza el formato RK, otro de los pesos pesados que se basa en una implementación cerrada derivada del formato PAQ: PWCM. WinRK (Shareware) Formato .KGB Otro de los formatos conocidos de este grupo es KGB, de Tomasz Pawlak. KGB Archiver (su interfaz gráfica) permite cómodamente comprimir archivos y/o carpetas, estimando la cantidad de RAM que va a utilizar. KGB Archiver permite comprimir en paq (desde 1 a 7) y zip. KGB Archiver (Gratuito, código abierto) 5. Los modernos (de espíritu libre) Los formatos y tecnologías libres (que utilizan formatos sin patentes o restricciones) siempre se terminan por extender con más rapidez que otros. En esta sección veremos dos ejemplos (aunque no son los únicos) de como un formato y programa de compresión de código abierto, puede llegar a ser la opción más interesante. Formato .7Z Uno de los formatos que ya tardaba en aparecer era 7z. Es el formato propio del compresor 7zip, el cuál es de código abierto y superior en redimiento a los clásicos formatos zip o rar. 7zip permite comprimir en 7z, bzip2, gzip, xz y zip. Se trata de un compresor muy eficiente y sencillo. Además, 7zip permite comprimir con diferentes algoritmos: 7z (LZMA, LZMA2, PPMd y bzip2) y zip (deflate, deflate64, bzip2, LZMA y PPMd). 7zip (Gratuito, código abierto) Formato .ARC Por otra parte, tenemos ARC (no confundir con el formato ARC de SEA, mencionado al principio del artículo). Se trata de un nuevo formato ARC que gestiona el compresor de código abierto FreeARC. FreeARC permite comprimir en su formato propio: ARC. Una de las cosas que destacan de este compresor es que tiene un formato de alto rendimiento que utiliza algoritmos conocidos para crear sus archivos ARC. En la pestaña de compresión se puede elegir los siguientes perfiles: Junto a NanoZip suele quedar en los primeros puestos de rendimiento y eficiencia, en las comparativas de compresión. FreeARC (Gratuito, código abierto) Otros formatos Existen otros formatos menos extendidos también dignos de mención, como pueden ser el formato QUAD, BALZ y LZPX, los tres diseñados por Ilya Muravyov. Encode Narod (Gratuito, código abierto) 6. Los perezosos (a mi, dámelo todo junto) Existen ciertos compresores (como bzip2 o gzip) que sólo son capaces de realizar la compresión sobre un sólo fichero. A esto se le denomina compresión sólida. No hay mayor problema, ya que lo que se suele hacer es empaquetar todos los archivos en un sólo fichero (utilizando tar, por ejemplo). Es por eso que estos archivos se suelen denominar tar.gz o tar.bz2, para diferenciarlos de si están sólo empaquetados (.tar), o empaquetados y comprimidos. Formato .GZ Probablemente, uno de los formatos más extendidos es gz (gzip), el cuál es una evolución del formato z (compress). Es muy utilizado en entornos GNU/Linux y se basa en el algoritmo deflate (utiliza la popular librería zlib). Gzip Zopfli consigue un 5% más de compresión, manteniendo la compatibilidad. Recientemente, Google ha publicado zopfli, un compresor que mejora el ratio de gzip (un 5%) manteniendo la compatibilidad y la velocidad de descompresión. Eso sí, la velocidad de compresión es 100 veces más lenta, por lo que es ideal para compresión de archivos estáticos y desaconsejable para compresiones al vuelo (on-the-fly). Zopfli En menéame, el usuario im_dario nos comenta la existencia de pigz (gzip paralelo) y snappy, el primero de ellos orientado a «heavy-users» que soporta múltiples procesadores y núcleos, mientras que el segundo podría ser considerado el inverso de zopfli, ya que está orientado para conseguir una mayor velocidad. pigzSnappy Formato .BZ2 Si hablamos de gzip es obligatorio hablar de bzip2, el cuál tiene un mejor ratio de compresión, pero es más lento y utiliza más memoria RAM. Bzip2 Otros formatos Algunos formatos destacables similares a gzip o bzip2 son LZ, de Lzip (basado en LZMA), LZO, de Lzop (uno de los compresores más rápidos) o XZ (basada en LZMA2), que es básicamente el mismo formato que 7z, pero con soporte para metadatos. Este último es muy utilizado en distribuciones como Arch Linux. Un excelente compresor que soporta multitud de formatos y además tiene un interfaz gráfica impecable y un formato de compresión propio (PEA) es PeaZip. PeaZip soporta pea, 7z, arc, tar.bz2, tar.gz, quad/balz, xz, zip y paq. Además, permite utilizar algoritmos concretos en formatos como 7z (LZMA, LZMA2, PPMd y bzip2), zip (deflate, deflate64, bzip2, LZMA y PPMd) o PAQ (LPAQ8, PAQ8o y ZPAQ). También permite personalizar y establecer tu propio formato con el compresor y parámetros externos que especifiques, útil para nuevos formatos. PeaZip (Gratuito, código abierto) 7. Experimentales (cobayas comprimibles) Por último, aunque sólo están disponible en versión de linea de comandos y están en fase experimental, han obtenido muy buenos resultados algunos compresores como CSC32 (de Fu Siyuan) o Hook, ZCM, LZSR, Rings y Yzx (de Nania Francesco Antonio). Si estás interesado en ver el rendimiento de los diferentes formatos de compresión, recomiendo las siguientes comparativas donde puedes ver dichos resultados: Compression Ratings: Contiene listas técnicas y calculadoras para obtener datos a partir de los parámetros indicados. De las más técnicas y completas. Ofrece los parámetros exactos utilizados y ofrecen los datos reales listos para descargar y comprobar por uno mismo. (2012)Squeeze Chart: Comparativa con todo lujo de detalles, separada en tipos de datos y con multitud de información sobre cada compresor. (2013)Maximum Compression: Datos organizables por rendimiento, ratio de compresión o velocidad de compresión o descompresión. (2011) Link to comment Share on other sites More sharing options...
KuroroX2k Posted October 18, 2013 Report Share Posted October 18, 2013 Buena la guìa, se agradece el aporte. Link to comment Share on other sites More sharing options...
bombero_7 Posted October 19, 2013 Report Share Posted October 19, 2013 buenisima, oye una vez encontre un archivo comprimido que pesaba como 1kb y contenia un windows que son como 500MB , sabes cual es el que comprime asi??? Link to comment Share on other sites More sharing options...
maxsteell9550 Posted December 25, 2013 Report Share Posted December 25, 2013 Buenisima guia habian varios formatos como el japo que no conocia ...y los compresores chinos tampoco D: .. se agradece.. Link to comment Share on other sites More sharing options...
Marrano Posted December 27, 2013 Report Share Posted December 27, 2013 Excelente, sacaste 2 :banana: :banana: Agradezcan Link to comment Share on other sites More sharing options...
rq1 Posted December 27, 2013 Report Share Posted December 27, 2013 Gracias por la guía, buen aporte Link to comment Share on other sites More sharing options...
linkeado Posted December 27, 2013 Report Share Posted December 27, 2013 Exelente guia se agradece Link to comment Share on other sites More sharing options...
hott_em Posted September 15, 2015 Report Share Posted September 15, 2015 graciela compadre... esta muy buena la guia Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now