Zstandard
C библиотека за мощно и бързо компресиране
Постигнете бързо в реално време Мощна компресия и декомпресия чрез C библиотека с отворен код
Zstandard е C библиотека с отворен код за компресиране, която предоставя мощен и бърз алгоритъм за високи степени на компресия в C приложения. Библиотеката предлага много широк диапазон от скорости и се предлага под двоен BSD и GPLv2 лиценз. Библиотеката поддържа режим на компресия на речник, който е много полезен за компресиране на малки данни.
Библиотеката Zstandard е насочена към сценарии за компресия в реално време на ниво zlib и по-добри съотношения на компресия. Библиотеката поддържа редовни нива на компресиране от 1 до 22. Моля, не забравяйте, че нива 20 и по-високи трябва да се използват внимателно, тъй като е необходима много повече памет за гладка работа.
API е много стабилен, добре документиран и много лесен за работа. Той включва поддръжка за няколко важни функции, свързани с компресиране и декомпресиране, компресия на поточно предаване, както и декомпресия, помощни функции на речника, оразмеряване на рамка, по-добро управление на паметта. Библиотеката също така поддържа разширени функции за компресия и декомпресия, функции за вътрешен поток без буфер и синхронен поток, компресия за поток без буфер и декомпресия (синхронен режим).
Първи стъпки със Zstandard
Препоръчителният начин за инсталиране на Zstandard е от GitHub, моля, използвайте следната команда за гладка инсталация.
Инсталирайте Zstandard библиотека чрез GitHub
gh repo clone facebook/zstd
Компресиране и декомпресиране чрез C API
Библиотеката с отворен код Zstandard включва няколко важни функции за компресиране и декомпресиране. Библиотеката предлага функции за компресиране и декомпресиране в паметта. Предлага няколко нива на компресия, които разширяват предпочитанията за скорост и съотношение. Можете лесно да компресирате или декомпресирате един файл, както и множество файлове в една команда. С новото издание скоростта на декомпресия е допълнително подобрена.
Многонишкова компресия и декомпресия чрез C API
Има няколко библиотеки за компресиране, които са еднонишкови, което означава, че потребителите трябва да се доверят на друг софтуер или да напишат свой собствен многонишков код. Библиотеката с отворен код Zstandard включва функции, които позволяват операция за компресиране за използване на множество нишки с помощта на C команди. Страхотното е, че процесът на компресиране може да премине към многонишков API и процесът на декомпресиране няма да изисква никаква специална обработка.
Компресиране и декомпресиране на малки данни
Обикновено се вижда, че винаги е много трудно да се компресира или декомпресира по-малко количество данни. Това е много често срещан проблем, с който се сблъскват повечето програми за компресиране. Библиотеката Zstandard подобри това, като предложи режим на обучение, който позволява на потребителите да избират избран тип данни. По този начин се използват малко проби с малко количество данни в обучителния модул за настройка на програмата. Резултатът от обучителния модул се съхранява във файл, наречен речник, който се използва в бъдеще преди всяко компресиране и декомпресиране. Беше наблюдавано, че алгоритъмът за компресиране се учи от минали данни и как да компресира бъдещи данни. По този начин, използвайки концепцията на речника, съотношението на компресиране и декомпресиране на малки данни е значително подобрено.