MYETV utilisant le nouvel algorithme de compression Z-Standard

La compression des données est un élément essentiel de l'informatique moderne, depuis la réduction de l'utilisation du stockage jusqu'à l'accélération des transferts de données. Alors que des algorithmes comme Brotli, Gzip et LZ4 ont bien servi au fil des ans, un nouveau concurrent a émergé et a rapidement gagné en popularité: Norme Z (Zstd). Développé par Facebook, Zstandard offre un mélange puissant de taux de compression élevés et vitesse de décompression rapide, le rendant idéal pour un large éventail d'applications.

MYETV utilise ce nouvel algorithme de compression appelé Z-Standard entre le serveur et le client ; tandis que la communication entre le serveur et le serveur se fait par l'algorithme de compression brotli. Cette configuration nous permet d'avoir une compression parfaite entre le serveur et le client avec des performances plus que optimales.

Ces nouveaux algorithmes de compression sont ceux qui vous permettent de revenir avec le bouton du navigateur et de trouver la page comme vous l'avez laissé précédemment (y compris, par exemple, une vidéo à moitié finie).

Qu'est ce que Zstandard ?

Zstandard est un algorithme de compression en temps réel développé par Facebook, conçu pour offrir des vitesses de compression et de décompression rapides tout en réalisant des rapports de compression comparables aux meilleurs algorithmes de la classe. Il est open-source, soutenu par une communauté forte, et soutenu dans de nombreuses plateformes, outils et bibliothèques.


Zstandard vs Brotli: Principales différences

1. Vitesse

  • Compression: Zstandard est généralement plus rapide que Brotli, en particulier aux niveaux de compression intermédiaire.
  • Décompression: Zstd excelle avec des vitesses de décompression extrêmement rapides, ce qui est crucial pour les applications en temps réel ou les systèmes à haut débit.

2. Rapport de compression

  • À ses niveaux de compression plus élevés, Zstandard peut concurrencer ou surperformer Brotli, selon l'ensemble de données. Il fournit un bon équilibre entre le rapport et la vitesse.
  • Brotli pourrait sortir Zstd légèrement dans la compression statique de contenu web, mais Zstd gagne dans la polyvalence et la performance.

3. Échelle

  • Zstandard supporte une large gamme de niveaux de compression (1–22) et comprend Mode dictionnaire pour une meilleure performance sur les petits fichiers.
  • Elle comprend également: correspondance longue distance fonction pour améliorer la compression sur les grands fichiers.

4. Cas d'utilisation

  • Norme Z est largement utilisé pour la compression des journaux, les solutions de sauvegarde, le stockage des bases de données et les systèmes en temps réel.
  • Brotli est principalement utilisé pour la compression HTTP dans les navigateurs, mais n'est pas idéal pour le stockage ou le transfert de données à usage général.

Avantages du passage à Zstandard

Exécution plus rapide

Zstandard offre une latence de décompression extrêmement faible. Pour les services où la vitesse de décompression est un goulot d'étranglement (p. ex. stockage en nuage, serveurs de bord CDN), cela signifie des temps de réponse plus rapides et une utilisation plus faible du processeur.

Meilleure efficacité de compression

Avec des niveaux compatibles et un support de dictionnaire, Zstd offre souvent de meilleurs ratios de compression que Gzip ou LZ4 — et effectue près de Brotli, sinon mieux dans de nombreux cas.

CPU inférieur Utilisation

Zstd est optimisé pour les processeurs modernes et peut tirer parti du multithreading, réduisant le coût global des ressources des processus de compression et de décompression.

Polyvalent et flexible

Que vous comprimiez des journaux, des données d'application ou même des actifs de jeu, Zstd s'adapte bien à tous les cas d'utilisation — des systèmes à haut débit aux environnements intégrés.

Développement actif

Être entretenu par Méta (Facebook), Zstandard est activement amélioré et largement adopté dans des outils comme tar, systemd, noyau Linux et différents systèmes de base de données.


Adoption du monde réel

  • Facebook/Meta: A l'origine développé pour l'infrastructure interne de Facebook.
  • Linux: Zstd est utilisé dans la compression du noyau et les initramfs.
  • ZFS et btrfs: Ces systèmes de fichiers supportent Zstd pour une compression transparente.
  • MacOS et Windows: Les deux systèmes d'exploitation incluent le support natif de Zstd dans différents contextes.

Quand ne pas utiliser Zstandard?

  • Pour Actifs fixes du site Web, Brotli pourrait encore être mieux en raison de ratios légèrement meilleurs aux niveaux maxi (bien que plus lents).
  • Dans environnements plus anciens lorsque le support Zstd est manquant ou limité, Brotli ou Gzip peut être plus compatible.

Conclusion

Zstandard représente la prochaine étape de la compression des données: rapide, efficace et très polyvalent. Alors que Brotli reste un choix solide pour la compression web, Zstd offre une expérience supérieure dans la plupart des autres domaines - du stockage et des sauvegardes aux bases de données et au traitement en temps réel. Si vous cherchez à optimiser les performances de votre système et à réduire l'utilisation des ressources, c'est maintenant un bon moment pour faire le changement.