Umstellung der Kompression bei Logrotate von gzip auf das schnellere und effizientere zstd
Das Kompressionsprogramm gzip ist etwas in die Jahre gekommen, allerdings leistet es weiter gute Dienste bei hohen Kompressionsraten vor allem bei Texten wie Logdateien. Bei logrotate ist es in Verbindung mit dem Parameter compress
weiter das Standardprogramm. Für Zeitvorteile und leichte Kompressionsgewinne kann dieses aber leicht durch das effizientere zstd ersetzt werden.
Als Beispiel für die Effizienz von zstd wird hier eine Logdatei von Varnish mit einer Größe von 137.599.198 Bytes beziehungsweise 132 Megabytes genommen.
Programm | Größe in Bytes | Kompressionszeit | Kompressionsrate |
---|---|---|---|
lz4 v1.9.3 | 16.108.881 | 0,220s | 88,29 % |
zip v3.0 | 6.941.769 | 2,006s | 94,96 % |
gzip v1.10 | 6.941.624 | 1,933s | 94,96 % |
arj32 v3.10 | 6.730.722 | 3,393s | 95,11 % |
zstd v1.48 | 6.290.302 | 0,284s | 95,43 % |
rar v6.32 | 4.665.817 | 2,146s | 96,61 % |
7-Zip v16.02 | 4.582.006 | 12,741s | 96,67 % |
bzip2 v1.08 | 4.160.476 | 22,675s | 96,97 % |
xz v5.2.5 | 3.912.692 | 33,346s | 97,15 % |
lzma v9.22 | 3.460.332 | 158,749s | 97,49 % |
Alle Tests wurden mit den Standardparametern durchgeführt. Dabei zeigt zstd deutlich seine Effizienz, indem es nicht nur leicht besser als gzip komprimiert, sondern zudem auch noch ganze 85 Prozent flotter als gzip ist. Besonders bei Systemen mit großen und vielen Logdateien ein nicht zu vernachlässigender Faktor. Daher bietet es sich an, die standardmäßigen Rotationen der Logdateien und dabei Kompression der älteren Versionen auf zstd umzustellen.
zstd kann bei Debian-Systemen leicht mit den Standardinstrumenten nachinstalliert werden. apt install zstd
hilft hierbei weiter. Die Einstellungsdateien für logrotate finden sich standardmäßig unter /etc/logrotate.d
. Dort lässt sich beispielsweise eine Datei namens 0_eigene_Einstellungen
mit den folgenden Parametern erstellen.
compresscmd /usr/bin/zstd
compressext .zstd
Alternativ kann das natürlich auch in /etc/logrotate.conf
geschrieben werden. Danach werden alle Standardkompressionen mit zstd durchgeführt. Für die Suche oder Verarbeitung von komprimierten Logdateien muss dann aber statt des gewohnten zcat
ein zstdcat
verwendet werden, was aber keine große Hürde darstellen sollte.
Stichworte: 7-zip, Arj, Arj32, Bzip2, Gzip, Kompression, Kompressionsprogramme, Logdateien, Logrotate, Lz4, P7zip, Performance, Rar, Test, Xz, Zip, Zstd
Kategorien: Linux, Debian
Kommentare
Keine Kommentare
Kommentare