Tip: zstd (zstandard)

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
Benutzeravatar
mistersixt
Beiträge: 6524
Registriert: 24.09.2003 14:33:25
Lizenz eigener Beiträge: GNU Free Documentation License

Tip: zstd (zstandard)

Beitrag von mistersixt » 11.01.2019 12:07:18

Moin moin,

einfach einer kleiner Tip ; auch wenn ich Facebook nicht sonderlich mag, so haben sie doch ein ziemlich flottes De-/Komprimierungsprogramm ins Leben gerufen, zstd (zstandard):

https://packages.debian.org/search?keyw ... ection=all

Eben mal eine 30 GB grosse Mysql-DB (myisam) "eingedampft", mit 12 Threads auf 12 Kernen, "einfache" Kompression (default 3):

Code: Alles auswählen

real    0m40.502s
user    6m30.528s
sys     0m19.016s

Size: 7.1 G
Hier mal ein Vergleich mit "pbzip2 -p12 -1":

Code: Alles auswählen

real    4m6.614s
user    48m50.184s
sys     0m55.072s

Size: 6.2 G
Oder auch mit "pigz -p12 -1":

Code: Alles auswählen

real    0m57.741s
user    11m34.932s
sys     0m44.180s

Size: 8.6G
Das ist rasend schnell bei guter Packrate!

Gruss, mistersixt.
--
System: Debian Stretch, 4.x.x.bpo-amd64, ext4, AMD Ryzen 7, 8 x 3.7 Ghz., NV-GTX 1070, 16 GB Ram, XFCE

Benutzeravatar
smutbert
Beiträge: 6491
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Tip: zstd (zstandard)

Beitrag von smutbert » 11.01.2019 20:07:40

und das beste ist, dass der Algorithmus in btrfs bereits zur transparenten Verschlüsselung Kompression zur Verfügung steht (in buster und unstable).
Zuletzt geändert von smutbert am 16.01.2019 12:29:11, insgesamt 1-mal geändert.

r4pt0r
Beiträge: 1237
Registriert: 30.04.2007 13:32:44
Lizenz eigener Beiträge: MIT Lizenz

Re: Tip: zstd (zstandard)

Beitrag von r4pt0r » 16.01.2019 11:38:27

bzip/gzip war auch nie wirklich auf hohen Durchsatz optimiert bzw stammt auch einfach noch aus einer anderen Zeit (single-threaded; wenig/keine HW-beschleunigungen etc...). Zwar wurde hier viel getan, trotzdem kommt es lange nicht an die hohen Durchsatzraten moderner Kompressionsverfahren ran.

Direkter "Konkurrent" zu zstd bzw Referenz für Vergleiche sollte LZ4 sein - das ist bei der Kompression (v.a. in relevanten CRs) noch deutlich performanter, dafür skaliert zstd aber sehr gut bei der dekompression, speziell bei steigender Anzahl threads und sehr hohen CR (die aber in der praxis extrem selten ins gewicht fallen):
http://blosc.org/posts/codecs-pgo/

Für dateisysteme/datasets mit primär lesenden Zugriffen lohnt sich zstd also ggf. Bei höherer Gewichtung auf schreibende Zugriffe kann LZ4 noch immer die bessere Wahl sein, speziell da es dynamisch blöcke überspringen kann wenn diese sich nicht komprimieren lassen; das kann den Durchsatz _enorm_ erhöhen (und führt auch zu den oft beobachteten Fluktuationen im Durchsatz). Wirklichen Aufschluss welches verfahren "besser" für den eigenen Anwendugsfall ist, kann nur ein eigener Benchmark mit der später Anliegeneden Arbeitslast geben.

*zip glänzt eher wenn es um maximale Kompressionsraten geht und der Durchsatz im Hintergrund steht - für reine Datengräber oder kalten Storage kann das durchaus sinnvoll sein. Für datasets mit text-/logfiles die relativ langsam wachsen und lange mit wenig Lesezugriffen liegen bleiben ist *zip ebenfalls gut geeignet.

und das beste ist, dass der Algorithmus in btrfs bereits zur transparenten Verschlüsselung zur Verfügung steht (in buster und unstable).
btrfs vermarktet Kompression als Verschlüsselung?? 8O

Benutzeravatar
smutbert
Beiträge: 6491
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: Tip: zstd (zstandard)

Beitrag von smutbert » 16.01.2019 12:28:58

Nein, natürlich nicht, wollte Kompression schreiben :facepalm:

Verschlüsselung in btrfs ist glaube ich auch in Arbeit, aber das ist vermutlich in einem eigenen dm-crypt-Layer oä eh besser aufgehoben.

Antworten