То, что самый большой размер является gzip (скажите, что 10 КБ ради примера) может быть распаковано к?
Это очень зависит от сжимаемых данных. Быстрый тест с файлом на 1 ГБ, полным нулей, дает сжатый размер ~120Kb, таким образом, Ваш файл 10 КБ мог потенциально расшириться в ~85Mbytes.
Если данные имеют низкое дублирование для начала, например, архив содержит файлы изображений в формате, который сжат исходно (gif, jpg, png...), то gzip может добавить не дальнейшее сжатие вообще. Для двоичных файлов как исполняемые файлы программы Вы могли бы видеть до 2:1 сжатие, для простого текста, HTML или других разметок 3:1 или 4:1, или больше не маловероятно. Вы могли бы видеть 10:1 в некоторых случаях, но ~8700:1, замеченный с файлом, заполненным отдельным символом, является чем-то, что Вы не собираетесь видеть внешние столь же искусственные обстоятельства.
Можно проверить, с каким количеством данные следовали бы из распаковки gzip файла, на самом деле не пишущий его несжатое содержание в диск, gunzip -c file.gz | wc --bytes
- это распакует файл, но не сохранит результаты, вместо этого передавая их wc
который будет считать число байтов, поскольку они передают, затем отбрасывают их. Если сжатое содержание является файлом tar, содержащим много много маленьких файлов, Вы могли бы найти, что заметно больше дискового пространства требуется, чтобы распаковывать полный архив, но при большинстве обстоятельств, количество, возвращенное из передачи по каналу gunzip
вывод через wc
будет столь точным, как Вам нужно.
Обычно Вы не получаете больше чем 95%-е сжатие (так, чтобы 10 КБ gzipped данные распаковали бы к ~200kB), но существуют специально обработанные файлы, которые расширяются экспоненциально. Искать 42.zip
, это распаковывает к немногим петабайтам (бессмысленных) данных.
Степень сжатия любого алгоритма сжатия будет функцией сжимаемых данных (помимо длины тех данных).
Вот анализ в MaximumCompression,
Посмотрите на один из образцов как,
Сводка нескольких оценочных испытаний сжатия файла
File type : Multiple file types (46 in total) # of files to compress in this test : 510 Total File Size (bytes) : 316.355.757 Average File Size (bytes) : 620,305 Largest File (bytes) : 18,403,071 Smallest File (bytes) : 3,554