Zstandard
Biblioteka C dla wydajnej i szybkiej kompresji
Osiągnij szybką kompresję i dekompresję w czasie rzeczywistym za pomocą biblioteki Open Source C
Zstandard to biblioteka kompresji C typu open source, która zapewnia potężny i szybki algorytm dla wysokich współczynników kompresji w aplikacjach C. Biblioteka oferuje bardzo szeroki zakres szybkości i jest dostępna na dwóch licencjach BSD i GPLv2. Biblioteka obsługuje tryb kompresji słownikowej, co jest bardzo przydatne przy niewielkiej kompresji danych.
Biblioteka Zstandard jest przeznaczona dla scenariuszy kompresji w czasie rzeczywistym na poziomie zlib i lepszych współczynników kompresji. Biblioteka obsługuje regularne poziomy kompresji od 1 do 22. Należy pamiętać, że poziomy 20 i wyższe muszą być używane ostrożnie, ponieważ do płynnej pracy potrzeba znacznie więcej pamięci.
API jest bardzo stabilne, dobrze udokumentowane i bardzo łatwe w obsłudze. Zawiera obsługę kilku ważnych funkcji związanych z kompresją i dekompresją, kompresją strumieniową i dekompresją, funkcjami pomocniczymi słownika, rozmiarem ramek, lepszym zarządzaniem pamięcią. Biblioteka obsługuje również zaawansowane funkcje kompresji i dekompresji, bezbuforowe i synchroniczne wewnętrzne funkcje strumieniowania, bezbuforową kompresję strumieniową i dekompresję (tryb synchroniczny).
Pierwsze kroki z Zstandard
Zalecanym sposobem instalacji Zstandard jest z GitHub, użyj następującego polecenia, aby uzyskać płynną instalację.
Zainstaluj bibliotekę Zstandard przez GitHub
gh repo clone facebook/zstd
Kompresja i dekompresja przez C API
Biblioteka open source Zstandard zawiera kilka ważnych funkcji kompresji i dekompresji. Biblioteka oferuje funkcje kompresji i dekompresji w pamięci. Oferuje kilka poziomów kompresji, które rozszerzają preferencje szybkości i proporcji. Możesz łatwo skompresować lub zdekompresować pojedynczy plik, a także wiele plików w jednym poleceniu. W nowej wersji prędkość dekompresji została jeszcze bardziej poprawiona.
Wielowątkowa kompresja i dekompresja przez C API
Istnieje kilka bibliotek kompresji, które są jednowątkowe, co oznacza, że użytkownicy muszą zaufać innemu oprogramowaniu lub napisać własny wielowątkowy kod. Biblioteka open source Zstandard zawiera funkcje, które pozwalają operacji kompresji na wykorzystanie wielu wątków za pomocą poleceń C. Wspaniałą rzeczą jest to, że proces kompresji może przejść do wielowątkowego API, a proces dekompresji nie będzie wymagał specjalnej obsługi.
Mała kompresja i dekompresja danych
Zwykle widać, że skompresowanie lub dekompresowanie mniejszej ilości danych jest zawsze bardzo trudne. Jest to bardzo powszechny problem, z którym boryka się większość programów do kompresji. Biblioteka Zstandard poprawiła to, oferując tryb uczenia, który pozwala użytkownikom wybrać wybrany typ danych. W ten sposób do dostrojenia programu wykorzystuje się niewiele próbek z niewielką ilością danych w module uczącym. Wynik modułu uczącego jest przechowywany w pliku zwanym słownikiem, który będzie używany w przyszłości przed jakąkolwiek kompresją i dekompresją. Zaobserwowano, że algorytm kompresji uczy się na podstawie danych z przeszłości i jak skompresować przyszłe dane. Dzięki zastosowaniu koncepcji słownikowej znacznie poprawiono współczynnik kompresji i dekompresji małych danych.