ZSTD - Ein schneller Datenkomprimierungsalgorithmus, der von Facebook verwendet wird

ZSTD - Ein schneller Datenkomprimierungsalgorithmus, der von Facebook verwendet wird

Zstandard (auch bekannt als ZSTD) ist ein kostenloses Open-Source Facebook. Es ist ein verlustfreier Komprimierungsalgorithmus, der in geschrieben wurde C (Es gibt eine erneute Implementierung in Java) - Es ist also ein natives Linux -Programm.

Lesen Sie auch: 10 7zip (Data Commersion) Befehlsbeispiele unter Linux

Bei Bedarf kann es die Komprimierungsgeschwindigkeit gegen stärkere Komprimierungsverhältnisse handeln (Kompressionsgeschwindigkeit und Komprimierungsverhältnis kann durch kleine Schritte konfiguriert werden), umgekehrt umgekehrt. Es verfügt über einen speziellen Modus für kleine Datenkomprimierung, das als Wörterbuchkomprimierung bezeichnet wird, und kann Wörterbücher aus jedem vorgesehenen Probensatz erstellen. Es wird mit einem Befehlszeilen -Dienstprogramm zum Erstellen und Dekodieren geliefert .ZST, .gz, .xz Und .LZ4 Dateien.

Wichtig, Zstandard hat eine reiche Sammlung von APIs, unterstützt fast alle beliebten Programmiersprachen, darunter Python, Java, JavaScript, Nodejs, Perl, Ruby, C#, Go, Rost, Php, Schweiß und vieles mehr.

Es wird aktiv verwendet, um große Datenvolumina in mehreren Formaten und Anwendungsfällen in in den Facebook; Dienstleistungen wie Amazon Rotverschiebung Data Warehousing; Datenbanken wie Hadoop und Redis; Das Tor -Netzwerk und viele andere Anwendungen, einschließlich Spiele.

Die folgenden Ergebnisse werden erzielt, indem mehrere Fast-Komprimierungs-Algorithmen-Tests auf einem Server mit Linux Debian mit Lzbench, einem Open-Source-In-Memory-Benchmark-Tool, ausgeführt werden.

ZStandard -Kompressionstests

So installieren Sie das ZStandard -Komprimierungstool unter Linux

Installieren Zstandard Bei einer Linux -Verteilung müssen Sie es aus Quellen kompilieren, aber bevor dies zuerst die erforderlichen Entwicklungstools in Ihrem System mit Ihrem Distributionspaket -Manager wie gezeigt installieren müssen.

$ sudo APT Update && sudo apt Installieren Sie build-wesentliche #ubuntu/debian #yum Group Install "Entwicklungstools" #Centos/Rehl #DNF GroupInstall "C-Entwicklungs-Tools und -Bibliotheken" #Fedora 22+ 

Sobald alle benötigten Entwicklungstools installiert sind, können Sie jetzt das Quellpaket herunterladen, in das lokale Repo -Verzeichnis wechseln, das Binärer erstellen und wie gezeigt installieren.

$ cd ~/downloads $ git klone https: // github.com/facebook/zstd.Git $ cd Zstd $ machen $ sudo make installieren 

Einmal Zstandard Installiert, jetzt können wir uns weiter bewegen, um eine grundlegende Verwendung von zu lernen ZSTD Befehlsbeispiele im folgenden Abschnitt.

Lernen Sie 10 ZSTD -Befehlsnutzungsbeispiele unter Linux

Die Befehlszeilensyntax von ZSTD ähnelt im Allgemeinen der von gzip Und xz Werkzeuge mit einigen Unterschieden.

1. A erstellen a .ZST Komprimierungsdatei geben Sie einfach einen Dateinamen an, um ihn zu komprimieren oder die zu verwenden -z Flag bedeutet auch Komprimierung, was die Standardaktion ist.

$ zstd ätzer-1.3.1-X86_64.Appimage oder $ ZSTD -z -EtchaR -1.3.1-X86_64.Appimage 

2. Zu dekomprimieren a .ZST Kompressionsdatei verwenden Sie die -D Flagge oder die Unzstd Nützlichkeit wie gezeigt.

$ zstd -detcher -1.3.1-X86_64.Appimage.ZST oder $ UNZSTD ATCER-1.3.1-X86_64.Appimage.ZST 

3. Um die Quelldatei nach einer Operation standardmäßig zu entfernen, wird die Quelldatei nach erfolgreicher Komprimierung oder Dekompression nicht gelöscht, um sie zu löschen, die Verwendung der Verwendung der --rm Möglichkeit.

$ ls ätzer-1.3.1-X86_64.Appimage $ ZSTD--RMETER-1.3.1-X86_64.Appimage $ ls ätzer-1.3.1-X86_64.Appimage 

4. Um eine Komprimierungsstufe festzulegen, verfügt ZSTD über eine Reihe von Betriebsmodifikatoren, beispielsweise können Sie eine Komprimierungsstufe als festlegen -6(Eine Nummer 1-19, Standardeinstellung 3) wie gezeigt.

$ ZSTD -6 - -RM ätzer -1.3.1-X86_64.Appimage 

5. Um eine Komprimierungsgeschwindigkeit einzustellen, hat ZSTD ein Kompressionsgeschwindigkeitsverhältnis 1-10, Die Standardkomprimierungsgeschwindigkeit ist 1. Sie können das Komprimierungsverhältnis gegen Kompressionsgeschwindigkeit mit dem handeln --schnell Option, desto höher ist die Zahl, je schneller die Kompressionsgeschwindigkeit.

$ zstd-fast = 10 ätzer-1.3.1-X86_64.Appimage 

6. Verwenden Sie die Informationen zu einer komprimierten Datei, um Informationen zu -l Flag, mit dem beispielsweise Informationen zu einer komprimierten Datei angezeigt werden.

$ zstd -l ätzer -1.3.1-X86_64.Appimage.ZST 

7. Verwenden Sie die Integrität von komprimierten Dateien, um die Integrität von komprimierten Dateien zu testen -T Flagge wie gezeigt.

$ zstd -tetcher -1.3.1-X86_64.Appimage.ZST 

8. Verwenden Sie die ausführliche Modus, um den ausführlichen Modus zu aktivieren -v Möglichkeit.

$ zstd -v -5 Etchier -1.3.1-X86_64.Appimage 

9. Verwendung anderer Dateikomprimierung oder Dekompressionsformate wie GZIP, XZ, LZMA und LZ4 verwenden die --Format = Format wie gezeigt.

$ zstd -v -format = gzip ätzer -1.3.1-X86_64.Appimage $ zstd -v --format = xz ätzer -1.3.1-X86_64.Appimage 

10. Um eine ZSTD-Prozesspriorität auf Echtzeit festzulegen, können Sie die Option verwenden -Priorität = rt wie gezeigt.

$ zstd-priority = rt ätzer-1.3.1-X86_64.Appimage 

Der -R Flag weist ZSTD an, rekursiv auf Wörterbüchern zu arbeiten. Sie können viele nützliche und erweiterte Optionen finden, wie Sie Wörterbücher lesen oder erstellen, indem Sie die ZSTD -Man -Seite konsultieren.

$ MAN ZSTD 

ZStandard Github Repository: https: // github.com/facebook/zstd

Zstandard ist ein schnelles Echtzeit-Datenkomprimierungsalgorithmus und Komprimierungstool, das hohe Komprimierungsverhältnisse bietet. Probieren Sie es aus und teilen Sie Ihre Gedanken dazu oder stellen Sie Fragen über das Feedback -Formular unten.