Zstandard
Knihovna C pro výkonnou a rychlou kompresi
Dosáhněte rychlého výkonu v reálném čase Výkonná komprese a dekomprese prostřednictvím knihovny Open Source C
Zstandard je open source kompresní knihovna C, která poskytuje výkonný a rychlý algoritmus pro vysoké kompresní poměry v aplikacích C. Knihovna nabízí velmi široký rozsah rychlostí a je k dispozici pod duální licencí BSD a GPLv2. Knihovna podporuje režim komprese slovníku, což je velmi užitečné pro kompresi malých dat.
Knihovna Zstandard se zaměřuje na scénáře komprese v reálném čase na úrovni zlib a s lepšími kompresními poměry. Knihovna podporuje běžné úrovně komprese od 1 do 22. Pamatujte prosím, že úrovně 20 a vyšší je třeba používat opatrně, protože pro plynulou práci je potřeba mnohem více paměti.
API je velmi stabilní, dobře zdokumentované a velmi snadno se s ním manipuluje. Zahrnuje podporu několika důležitých funkcí souvisejících s kompresí a dekompresí, streamingovou kompresi i dekompresi, pomocné funkce slovníku, velikost rámce, lepší správu paměti. Knihovna také podporuje pokročilé funkce pro kompresi a dekompresi, funkce vnitřního streamování bez vyrovnávací paměti a synchronní funkce, kompresi streamování bez vyrovnávací paměti a dekompresi (synchronní režim).
Začínáme se Zstandardem
Doporučený způsob instalace Zstandard je z GitHubu, pro hladkou instalaci použijte prosím následující příkaz.
Nainstalujte si knihovnu Zstandard přes GitHub
gh repo clone facebook/zstd
Komprese a dekomprese přes C API
Open source knihovna Zstandard obsahuje několik důležitých funkcí pro kompresi a dekompresi. Knihovna nabízí funkce komprese a dekomprese v paměti. Nabízí několik úrovní komprese, které rozšiřují preference rychlosti a poměru. Jedním příkazem můžete snadno komprimovat nebo dekomprimovat jeden soubor i více souborů. S novou verzí byla rychlost dekomprese dále vylepšena.
Vícevláknová komprese a dekomprese přes C API
Existuje několik kompresních knihoven, které jsou jednovláknové, což znamená, že uživatelé musí důvěřovat jinému softwaru nebo psát svůj vlastní vícevláknový kód. Open source knihovna Zstandard obsahuje funkce, které umožňují operaci komprese využít více vláken pomocí příkazů C. Skvělá věc je, že proces komprese se může přepnout na vícevláknové API a proces dekomprese nebude vyžadovat žádné zvláštní zacházení.
Malá komprese a dekomprese dat
Obvykle bylo vidět, že je vždy velmi obtížné komprimovat nebo dekomprimovat menší množství dat. Je to velmi častý problém, kterému čelí většina kompresních programů. Knihovna Zstandard to vylepšila tím, že nabízí tréninkový režim, který uživatelům umožňuje vybrat si vybraný typ dat. K vyladění programu se tedy v tréninkovém modulu používá několik vzorků s malým množstvím dat. Výsledek tréninkového modulu je uložen v souboru zvaném slovník, který se používá v budoucnu před jakoukoli kompresí a dekompresí. Bylo pozorováno, že kompresní algoritmus se učí z minulých dat a jak komprimovat budoucí data. Použitím konceptu slovníku se tedy výrazně zlepšil poměr komprese a dekomprese u malých dat.