Оптимальный размер для сжатия ZLIB? - PullRequest
4 голосов
/ 15 января 2012

Я видел темы о минимальном и максимальном размере для сжатия zlib.Я хотел знать, что люди считают оптимальным размером сжатого блока данных, который обеспечит наилучшую скорость.Есть ли преимущество разбиения файла, скажем, на несколько файловых блоков.

Спасибо.

1 Ответ

4 голосов
/ 15 января 2012

Разделение данных на блоки только ухудшит степень сжатия и вряд ли улучшит скорость.

Основная идея «разделения на маленькие блоки» заключается в улучшении доступа : скажем, вы хотитепрочитайте сегмент файла в позиции PX, и вы сразу узнаете, что он сохранен в блоке BY = PX / BlockSize.Поэтому вместо декодирования всего файла вы декодируете только блок.

И все.Если вам нужна более высокая скорость, вам придется использовать другой алгоритм сжатия, такой как Snappy или LZ4 , который, как известно, имеет скорость сжатия и распаковки в несколько раз быстрее, чем zlib.

...