Zstandard (kurz zstd) ist ein verlustfreies Kompressionsverfahren von Yann Collet, das dieser zunächst privat entwickelte und ab 2015 bei Facebook (heute Meta) zur Reife führte. Seit 2018 ist das Format als RFC 8478 dokumentiert, die aktuelle Fassung RFC 8878 stammt von 2021. Zstandard kombiniert eine LZ77-ähnliche Stufe mit einer sehr schnellen Entropiekodierung und erreicht so eine Kompressionsrate nahe gzip bei deutlich höherem Tempo.
Die Entropiestufe: FSE
Statt eines klassischen Huffman-Codes allein nutzt zstd die von Collet entwickelte Finite State Entropy (FSE), eine tabellenbasierte Variante der Asymmetric Numeral Systems (tANS). Diese verarbeitet weniger als ein Bit pro Symbol und ist trotzdem extrem schnell.
Einstellbare Stufen und Wörterbücher
- Kompressionslevel: Von negativen Werten (--fast, maximale Geschwindigkeit) bis Stufe 22 (beste Rate) lässt sich zstd an jede Aufgabe anpassen. Wer für Web-Inhalte die höchste Kompressionsrate sucht, greift oft zu Brotli – zstd optimiert stärker auf Tempo.
- Dictionary-Training: Für viele kleine Datensätze (etwa Datenbankzeilen) kann ein Wörterbuch trainiert werden, das die Kompressionsrate massiv verbessert.
- Kompression in Dateisystemen: Btrfs und ZFS unterstützen zstd als Alternative zu LZ4.
Verwandte Grundlagen: Verlustfreie Kompression, LZ77.