Mobile-Menu

Datenkompressionsverfahren Was ist Zstandard?

Von Dipl.-Ing. (FH) Stefan Luber 2 min Lesedauer

Anbieter zum Thema

Zstandard ist ein Verfahren zur verlustfreien Kompression von Daten. Es zeichnet sich durch hohe Geschwindigkeit, geringen Ressourcenbedarf und gute Kompressionsraten aus. Der ursprünglich von Facebook entwickelte Kompressionsalgorithmus wird von Linux und verschiedenen Dateisystemen genutzt.

Die wichtigsten IT-Fachbegriffe verständlich erklärt.(Bild:  © aga7ta - Fotolia)
Die wichtigsten IT-Fachbegriffe verständlich erklärt.
(Bild: © aga7ta - Fotolia)

Zstandard ist der Name eines Datenkompressionsverfahrens. Häufig wird auch die Abkürzung „zstd“ dafür verwendet.

Das Kompressionsverfahren ist noch nicht sehr alt. Es wurde im Jahr 2016 bei Facebook entwickelt und veröffentlicht. Entwickler des Algorithmus war Yann Collet. Die erste Version des Kompressionsverfahrens erschien im August 2016 als freie Software unter Open-Source-Lizenz. Seit der ersten Veröffentlichung wurde das Kompressionsverfahren kontinuierlich weiterentwickelt und in aktualisierten Versionen veröffentlicht.

Obwohl Zstandard im Vergleich zu anderen Kompressionsverfahren noch recht neu ist, wird es bereits von vielen Projekten, Systemen und Anwendungen genutzt. So unterstützt beispielsweise der Linux-Kernel das Verfahren für Dateisysteme wie Btrfs und SquashFS. Auch zur Komprimierung von Paketen in verschiedenen Paketquellen einiger Linux-Distributionen wird es verwendet. Details zu Formaten, Medientypen, Inhaltskodierung und Mechanismen des Kompressionsalgorithmus sind in verschiedenen RFCs wie dem RFC 8878 und RFC 9659 beschrieben und veröffentlicht. Zstandard zeichnet sich durch seine hohe Dekompressionsgeschwindigkeit, niedrigen Ressourcenbedarf und gute Kompressionsraten aus.

Merkmale des Kompressionsverfahrens Zstandard

Merkmale von Zstandard sind eine schnelle Entropiekodierung und die Kombination großer Suchfenster mit einem Wörterbuchabgleich. Es werden sowohl die Huffman-Kodierung als auch Finite-State Entropy (FSE) verwendet. Die Komprimierung und Dekomprimierung können in mehreren Threads erfolgen.

Mit Zstandard komprimierte Daten bestehen aus ein oder mehreren Frames. Jeder der Frames lässt sich unabhängig von anderen Frames dekomprimieren. Grundsätzlich sind zwei Frame-Formate definiert: Zstandard-Frames für die komprimierten Daten und Skippable-Frames für Metadaten.

Anwendungsbereiche des Zstandard-Kompressionsverfahrens

Obwohl Zstandard noch ein relativ junges Kompressionsverfahren ist, ist es bereits recht populär und findet breite Anwendung. Aufgrund der hohen Geschwindigkeit und weiterer Eigenschaften eignet sich das Verfahren für die Echtzeitkompression von Daten, zum Beispiel in Netzwerken, oder für die Kompression großer Datenmengen. Es kommt beispielsweise als Kompressionsverfahren für Backups und Archive oder für die Kompression von Logging-Dateien zum Einsatz.

Der Linux-Kernel unterstützt Zstandard seit dem Jahr 2017 als Kompressionsverfahren für die Dateisysteme Btrfs und SquashFS. Einige Linux-Distributionen nutzen Zstandard auch zur Kompression von Paketen diverser Paketquellen. Google Chrome, Microsoft Edge und andere Chromium-basierte Browser und auch Firefox unterstützen Zstandard für das Content-Encoding im HTTP-Header.

Vorteile des Zstandard-Kompressionsverfahrens

Kurz zusammengefasst bietet das Zstandard-Kompressionsverfahren folgende Vorteile:

  • hohe Kompressionsraten,
  • hohe Geschwindigkeit, insbesondere beim Dekomprimieren,
  • geringer Ressourcenbedarf,
  • verlustlose Komprimierung,
  • Unterstützung zahlreicher Kompressionslevel,
  • gute Balance zwischen Geschwindigkeit und Kompressionsrate,
  • echtzeitfähig,
  • auch bei kleinen Dateien effektive Komprimierung und hohe Kompressionsraten,
  • Möglichkeit der Verwendung vordefinierter oder benutzerdefinierter Wörterbücher,
  • Unterstützung verschiedener Betriebssysteme und Programmiersprachen.

(ID:50299360)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Data-Storage und -Management

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung