Скрыть
Компания Google открыла код Snappy, библиотеки для сжатия данных
Компания Google открыла под лицензией Apache код библиотеки Snappy ( http://code.google.com/p/snappy/ ) , в которую включен набор высокопроизводительных функций для сжатия и распаковки данных. Библиотека не поддерживает совместимость с существующими методами сжатия и не предназначена для обеспечения максимальной степени сжатия. Вместо этого все усилия разработчиков были направлены на создание экстремально быстрого способа сжатия и распаковки, при умеренном уровне сжатия.
Код Snappy можно считать стабильным, так как он давно и активно используется в первичных проектах Google, от BigTable и MapReduce до внутренних RPC-систем. По заявлению Google, формат кодирования Snappy зафиксирован и не будет меняться в будущих версиях библиотеки. Отдельно отмечается высокая стойкость декодировщика к нарушению целости обрабатываемого потока, который разработан специально с оглядкой на исключение крахов при обработке любых входных данных.
Скорость работы Snappy значительно опережает такие реализации, как LZO, LZF, FastLZ и QuickLZ, при отстающем, но сопоставимом уровне сжатия. На одноядерном CPU Core i7 64-разрядная сборка Snappy продемонстрировала способность сжимать потоки данных со скоростью 250 Мб/сек и разжимать со скоростью 500 Мб/сек. Примечательно, что добиться столь высокого уровня производительности удалось без использования ассемблерных вставок, что позволяет использовать Snappy для различных архитектур и платформ.
При сравнении с наиболее быстрым режимом сжатия библиотеки zlib, Snappy продемонстрировала десятикратный выигрыш в скорости при тестировании наборов данных различного характера (от текстов до бинарных объектов), но при этом размер сжатых данных получался на 20-100% больше. Для обычного текста уровень обеспечиваемого в Snappy сжатия составляет 1.5-1.7 раз, для HTML-файлов - 2-4 раза. Zlib в быстром режиме обеспечивает сжатие в текста в 2.6-2.8 раз, а HTML-файлов в 3-7 раз.
Копипаста с Opennet.ru
>>>
Подробнее
Re: Компания Google открыла код Snappy, библиотеки для сжатия данных
Еще из тамошних комментов узнал, что есть еще интересная штука, но уже под ГПЛ(1,2,3) QuickLZ http://quicklz.com/
Скорости похуже чем заявлены гуглом (бенчмарки http://quicklz.com/bench.html) , но сжатие лучше и написано на С, что имхо большой плюс плюс :)
Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.1.17) Gecko/20110302 Iceweasel/3.5.17 (like Firefox/3.5.17)