Recibe alertas instantáneas si tu sitio web cae
SMS Llamada Correo
Empezar a monitorizar

Gzip vs Brotli: algoritmos de compresión en comparación

Autor: Redacción HOSTTEST   | 10 ene 2023

gzip vs brotliDebido al creciente volumen de datos que se transmiten a través de redes como Internet, los métodos de compresión juegan un papel cada vez más importante. El objetivo de toda compresión es reducir el tamaño de los archivos, lo que repercute positivamente en la transferencia y el archivado de los mismos. Gzip y Brotli son dos métodos de compresión que, aunque persiguen el mismo objetivo, funcionan de manera diferente en detalle. En el siguiente artículo mostramos los principios básicos de ambos sistemas y cómo pueden utilizarse de forma óptima.

¿Cómo funciona la compresión de datos?

En la compresión de datos se reduce o condensa la cantidad de datos digitales. Para lograrlo, los algoritmos correspondientes eliminan la información redundante de los archivos originales. Para poder restaurar los datos por completo, la información se transforma en una forma de representación que es mucho más corta que la versión original.

Tanto Brotli como Gzip utilizan para ello el método de diccionario, en el que ciertas palabras clave se reemplazan por tokens. El siguiente texto de ejemplo ilustra el principio de este tipo de compresión.

Un texto de partida como

display: Bild1; display: Bild2

se puede comprimir al texto

F1: Imagen1; F1: Imagen2

La instrucción display está asignada al token F1. Este token está almacenado en el diccionario y sustituye a display en todo el código fuente.

La ventaja es que la cadena de caracteres se ha acortado considerablemente y, por tanto, se requieren menos recursos para la archivación o la transferencia del archivo.

Para restaurar el conjunto de datos original, el archivo debe descomprimirse. Para ello, el cliente necesita el algoritmo correspondiente ("el diccionario") para reemplazar los tokens por las cadenas de caracteres originales.

La importancia de la compresión de datos

Mediante la compresión sin pérdidas se puede reducir el tamaño de los archivos sin afectar la calidad de los datos. Tanto Brotli como Gzip son algoritmos que comprimen archivos sin pérdidas.

En la práctica, los algoritmos de compresión son importantes para los ámbitos de aplicación de

  • el archivado de datos y
  • la transferencia de datos

son de especial importancia.

Archivado de datos

Cuando se trata de almacenar grandes conjuntos de datos, la compresión puede lograr importantes ahorros de recursos. Los archivos comprimidos requieren menos espacio de almacenamiento en el hardware, lo que permite utilizarlo de forma más eficaz y económica.

Precisamente para la creación y el almacenamiento de copias de seguridad los algoritmos de compresión como Gzip o Brotli son de gran utilidad.

Transferencia de datos

La compresión de archivos puede aumentar el rendimiento de datos durante la transferencia.

Antes de que los datos puedan intercambiarse entre un servidor web y un cliente (FTP) o un navegador web, ambos sistemas deben ponerse de acuerdo sobre el método de compresión utilizado.

Al visitar una página web, esto sucede de la siguiente manera. El navegador comunica al servidor qué métodos conoce. El servidor responde con el método más adecuado y envía los datos comprimidos. Mediante la descompresión, el navegador los hace utilizables para el visitante del sitio web.

Para el usuario, la ventaja de la compresión se aprecia en un rendimiento claramente mejor y en tiempos de carga más cortos del sitio web. Combinada con Lazy-Loading y un servidor rápido, la compresión de datos puede hacer que la visita a un sitio web sea mucho más agradable para los internautas.

Funcionamiento de Gzip

Gzip es uno de los programas de compresión más antiguos. Fue desarrollado en 1992 por Jean‑Loup Gailly. El objetivo de Gailly era reemplazar compress, utilizado en Unix. Hoy en día Gzip está bajo la licencia GLP y es de código abierto y gratuito para todos los sistemas operativos más comunes. Emplea el algoritmo libre Deflate y, por tanto, no está sujeto a derechos de patente. Por eso puede ofrecerse como freeware y está disponible para los usuarios de forma gratuita.

Gzip trabaja según el método del diccionario. Para ello, el programa busca partes idénticas en un archivo y las combina mediante la correspondiente entrada del diccionario. En una ventana de 32 KiB, el programa busca una secuencia idéntica de bytes. Si una secuencia no se repite en los 32 KiB anteriores, queda excluida de la compresión. Permanece, por tanto, sin comprimir.

Gzip crea las entradas del diccionario por separado para cada archivo, lo que es algo más lento que el procedimiento de Brotli. No obstante, Gzip funciona de forma muy eficaz y puede alcanzar, según el archivo, un alto grado de compresión.

El programa crea el archivo comprimido en formato .gz o .z.

Funcionamiento de Brotli

El nombre Brotli es algo inusual para un software y proviene de un producto de bollería suizo. El sistema fue desarrollado por Zoltán Szabadka y Jyrki Alakuijala. Ambos eran empleados de Google en el momento del desarrollo.

Brotli también trabaja con el método del diccionario, aunque el principio difiere en detalles respecto a Gzip.

Para comprimir archivos, Brotli apenas crea nuevas entradas. En lugar de ello utiliza un diccionario de 120 KiB con más de 13.000 expresiones predefinidas. Se trata de las cadenas de caracteres más frecuentes que aparecen en documentos de texto o HTML. De este modo, todos los datos que Brotli ya conoce pueden comprimirse mucho más rápido. Solo para las expresiones desconocidas es necesario crear entradas separadas. Esto conduce a una compresión considerablemente mejorada, especialmente en archivos pequeños.

En comparación con el algoritmo Deflate, que utiliza Gzip, Brotli puede lograr una tasa de compresión de hasta un 20 % superior.

Ámbitos de aplicación

En principio, ambos sistemas son compatibles con los servidores web y navegadores más habituales. Para la transferencia de datos, ambos son por tanto igualmente adecuados, ya que pueden servir tanto páginas HTML estáticas como dinámicas.

En la mayoría de los casos será Brotli el que consiga un mayor grado de compresión, por lo que para muchos usuarios es la mejor opción.

 

Encontrar hosting web con soporte para Gzip y Brotli

Asegura ahora el hosting web perfecto

Al comparador de hosting web

 

Nuestro artículo se basa en experiencias y en investigación propia, así como en información procedente de fuentes externas.

Referencias & enlaces para ampliar información sobre el tema:
https://github.com/google/brotli (Brotli en github.com)
https://www.gnu.org/software/gzip/ (sitio web oficial de Gzip)

Crédito de la imagen:
Gerd Altmann en Pixabay

Escribe un comentario


Más proveedores de hosting


Más artículos interesantes

Largest Contentful Paint explicado: así se puede medir y mejorar LCP

Este artículo ofrece una visión completa sobre la importancia de LCP y muestra vías prácticas para medir esta métrica y ...

¿Qué es el caché y cómo influye en el rendimiento de los servidores?

El caché mejora la velocidad de las páginas web al almacenarlas. Os mostramos cómo funciona exactamente el caché.

Sitio web inaccesible - causas y medidas

Quien mantenga un sitio web propio durante un periodo prolongado se enfrentará, tarde o temprano, a tiempos de inactivid...

¿Qué son los balanceadores de carga y cómo funcionan?

Los balanceadores de carga te ayudan a distribuir una enorme carga de peticiones. Te mostramos cómo se hace en la prácti...

Pagespeed explicado: así se puede medir y mejorar el tiempo de carga del sitio web

Este artículo ofrece una visión general completa sobre las distintas formas de medir y optimizar el tiempo de carga del ...

Time To First Byte explicado: así se puede medir y mejorar el TTFB

Este artículo ofrece una visión completa sobre la importancia del TTFB y detalla maneras prácticas de medir esta métrica...