Zstandard
C-Bibliothek für leistungsstarke und schnelle Komprimierung
Erzielen Sie eine schnelle Echtzeit-Leistungsstarke Komprimierung und Dekomprimierung über die Open Source C-Bibliothek
Zstandard ist eine Open-Source-C-Komprimierungsbibliothek, die einen leistungsstarken und schnellen Algorithmus für hohe Komprimierungsverhältnisse in C-Anwendungen bereitstellt. Die Bibliothek bietet ein sehr breites Geschwindigkeitsspektrum und ist unter dualer BSD- und GPLv2-Lizenz verfügbar. Die Bibliothek unterstützt den Wörterbuchkomprimierungsmodus, der für die Komprimierung kleiner Daten sehr nützlich ist.
Die Zstandard-Bibliothek zielt auf Echtzeit-Komprimierungsszenarien auf zlib-Ebene und bessere Komprimierungsverhältnisse ab. Die Bibliothek unterstützt normale Komprimierungsstufen von 1 bis 22. Bitte denken Sie daran, dass die Stufen 20 und höher mit Vorsicht verwendet werden müssen, da für ein reibungsloses Arbeiten viel mehr Speicher benötigt wird.
Die API ist sehr stabil, gut dokumentiert und sehr einfach zu handhaben. Es hat Unterstützung für mehrere wichtige Funktionen in Bezug auf Komprimierung und Dekomprimierung, Streaming-Komprimierung sowie Dekomprimierung, Wörterbuch-Hilfsfunktionen, Frame-Größenanpassung und bessere Speicherverwaltung enthalten. Die Bibliothek unterstützt auch erweiterte Funktionen für Komprimierung und Dekomprimierung, pufferlose und synchrone innere Streaming-Funktionen, pufferlose Streaming-Komprimierung und Dekomprimierung (synchroner Modus).
Erste Schritte mit Zstandard
Die empfohlene Methode zur Installation von Zstandard ist von GitHub, bitte verwenden Sie den folgenden Befehl für eine reibungslose Installation.
Installieren Sie die Zstandard-Bibliothek über GitHub
gh repo clone facebook/zstd
Komprimierung und Dekomprimierung über C-API
Die Open-Source-Bibliothek Zstandard hat einige wichtige Funktionen zur Komprimierung und Dekomprimierung integriert. Die Bibliothek bietet In-Memory-Komprimierungs- und Dekomprimierungsfunktionen. Es bietet mehrere Komprimierungsstufen, die die Geschwindigkeits- und Übersetzungseinstellungen erweitern. Sie können problemlos eine einzelne Datei sowie mehrere Dateien mit einem einzigen Befehl komprimieren oder dekomprimieren. Mit der neuen Version wurde die Dekompressionsgeschwindigkeit weiter verbessert.
Komprimierung und Dekomprimierung mit mehreren Threads über die C-API
Es gibt mehrere Singlethread-Komprimierungsbibliotheken, was bedeutet, dass Benutzer einer anderen Software vertrauen oder ihren eigenen Multithread-Code schreiben müssen. Die Open-Source-Bibliothek Zstandard enthält Funktionen, die es einem Komprimierungsvorgang ermöglichen, mehrere Threads mithilfe von C-Befehlen zu nutzen. Das Tolle ist, dass der Komprimierungsprozess auf eine Multithread-API umschalten kann und der Dekomprimierungsprozess keine besondere Behandlung erfordert.
Kleine Datenkomprimierung und -dekomprimierung
Üblicherweise hat sich gezeigt, dass es immer sehr schwierig ist, eine kleinere Datenmenge zu komprimieren oder zu dekomprimieren. Dies ist ein sehr häufiges Problem, mit dem die meisten Komprimierungsprogramme konfrontiert sind. Die Zstandard-Bibliothek hat dies verbessert, indem sie einen Trainingsmodus anbietet, der es Benutzern ermöglicht, einen ausgewählten Datentyp auszuwählen. Daher werden wenige Proben mit einer kleinen Datenmenge im Trainingsmodul verwendet, um das Programm abzustimmen. Das Ergebnis des Trainingsmoduls wird in einer Datei namens Wörterbuch gespeichert, die in Zukunft vor jeder Komprimierung und Dekomprimierung verwendet wird. Es wurde beobachtet, dass der Komprimierungsalgorithmus aus vergangenen Daten lernt und wie zukünftige Daten zu komprimieren sind. Somit wurde bei Verwendung des Wörterbuchkonzepts das Komprimierungs- und Dekomprimierungsverhältnis bei kleinen Daten stark verbessert.