Подключиться для доступа к ядру RNG

lzo, gz, b2, lzma (.lzma2 =.xz) являются «потоковыми» компрессорами: они сжимают поток байтов, не знают и не заботятся о файлах, каталогах и метаданных, подобных разрешениям. Вы должны использовать архиватор, такой как tar, чтобы объединить все эти данные в поток байтов (tar-файл) и сжать его с помощью компрессора. Если это данные одного файла, о котором вы заботитесь, вы также можете передать этот файл одному из этих компрессоров.

Tar, cpio and pax - архиваторы: они берут кучу файлов и каталогов и кодируют данных и метаданных в одном файле. tar является самым популярным и наиболее совместимым, хотя технические достоинства между тремя минимальны настолько, что в течение рассвета были религиозные войны.

7z и zip - это компрессоры AND arcihvers: Затем сохраните все данных и метаданных и сжимать их. Однако AFAICT, ни один из них не сохраняет разрешения unix.

Zip использует тот же алгоритм, что и gzip, называемый DEFLATE. 7z использует алгоритм lzma

для чтения одного файла из tar.gz или т. П., Вам нужно будет распаковать весь поток gz до тех пор, пока не будет выставлен достаточный файл tar, чтобы вы могли его извлечь. Zip позволяет сжимать и вытаскивать каждый файл по отдельности. 7z может иметь либо поведение.

Коэффициенты сжатия и скорости: gzip и lzo имеют очень быструю скорость сжатия и декомпрессии, но низкие коэффициенты сжатия. Это также не требует большой памяти для сжатия. gzip немного медленнее и дает немного лучшую степень сжатия, чем lzo.

Это так быстро, что быстрее можно прочитать сжатый файл gz или lzo с диска и распаковать его на лету вместо считывание несжатого файла непосредственно с диска.

LZMA (xz) дает отличное сжатие для общих данных, но занимает очень много времени, чтобы сжимать и декомпрессировать, а также сжимать значительные объемы памяти.

bz2 был алгоритмом высокого сжатия выбора, но он вышел из употребления, поскольку он медленнее, чем lzma, и занимает больше времени для сжатия и декомпрессии. Однако для данных типы данных (последовательности dna, файлы с очень большими прогонами того же байта и т. Д.) Bzip2 может побить все остальное. Например, мне когда-то приходилось сжимать 4-гигабайтный файл из 1 и b2, уменьшив i до нескольких десятков килобайт в секунду, а lzma занял около 10-ти МБ, если я правильно помню.

1
задан 3 October 2016 в 20:02

0 ответов

Другие вопросы по тегам:

Похожие вопросы: