Что такое степень сжатия файлов

Что такое степень сжатия файлов

Все алгоритмы сжатия оперируют входным потоком информации с целью получения более компактного выходного потока при помощи некоторого преобразования. Основными техническими характеристиками процессов сжатия и результатов их работы являются:

·степень сжатия — отношение объемов исходного и результирующего потоков;

·скорость сжатия — время, затрачиваемое на сжатие некоторого объема информации входного потока, до получения из него эквивалентного выходного потока;

·качество сжатия — величина, показывающая, на сколько сильно упакован выходной поток при применении к нему повторного сжатия по тому же или другому алгоритму.

Алгоритмы, которые устраняют избыточность записи данных, называются алгоритмами сжатия данных, или алгоритмами архивации. В настоящее время существует огромное множество программ для сжатия данных, основанных на нескольких основных способах.

Все алгоритмы сжатия данных делятся на:

) алгоритмы сжатия без потерь, при использовании которых данные на приемной восстанавливаются без малейших изменений;

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

Существует два основных метода архивации без потерь:

алгоритм Хаффмана (англ. Huffman), ориентированный на сжатие последовательностей байт, не связанных между собой,

алгоритм Лемпеля-Зива (англ. Lempel, Ziv), ориентированный на сжатие любых видов текстов, то есть использующий факт неоднократного повторения "слов" — последовательностей байт.

Практически все популярные программы архивации без потерь (ARJ, RAR, ZIP и т.п.) используют объединение этих двух методов — алгоритм LZH.

Алгоритм основан на том факте, что некоторые символы из стандартного 256-символьного набора в произвольном тексте могут встречаться чаще среднего периода повтора, а другие, соответственно, — реже. Следовательно, если $+o записи распространенных символов использовать короткие последовательности бит, длиной меньше 8, а для записи редких символов — длинные, то суммарный объем файла уменьшится.

Алгоритм Лемпеля-Зива. Классический алгоритм Лемпеля-Зива -LZ77, названный так по году своего опубликования, предельно прост. Он формулируется следующим образом: если в прошедшем ранее выходном потоке уже встречалась подобная последовательность байт, причем запись о ее длине и смещении от текущей позиции короче чем сама эта последовательность, то в выходной файл записывается ссылка (смещение, длина), а не сама последовательность.

4.Показатель степени сжатия файлов

Сжатие информации в архивных файлах производится за счет устранения избыточности различными способами, например за счет упрощения кодов, исключения из них постоянных битов или представления повторяющихся символов или повторяющейся последовательности символов в виде коэффициента повторения и соответствующих символов. Алгоритмы подобного сжатия информации реализованы в специальных программах-архиваторах (наиболее известные из которых arj/arjfolder, pkzip/pkunzip/winzip, rar/winrar) применяются определенные Сжиматься могут как один, так и несколько файлов, которые в сжатом виде помещаются в так называемый архивный файл или архив.

Целью упаковки файлов обычно являются обеспечение более компактного размещения информации на диске, сокращение времени и соответственно стоимости передачи информации по каналам связи в компьютерных сетях. Поэтому основным показателем эффективности той или иной программы-архиватора является степень сжатия файлов.

Степень сжатия файлов характеризуется коэффициентом Кс, определяемым как отношение объема сжатого файла Vc к объему исходного файла Vо, выраженное в процентах (в некоторых источниках используется обратное соотношение):

Степень сжатия зависит от используемой программы, метода сжатия и типа исходного файла.

Наиболее хорошо сжимаются файлы графических образов, текстовые файлы и файлы данных, для которых коэффициент сжатия может достигать 5 — 40%, меньше сжимаются файлы исполняемых программ и загрузочных модулей Кс = 60 — 90%. Почти не сжимаются архивные файлы. Это нетрудно объяснить, если знать, что большинство программ-архиваторов используют для сжатия варианты алгоритма LZ77 (Лемпеля-Зива), суть которого заключается в особом кодировании повторяющихся последовательностей байт (читай — символов). Частота встречаемости таких повторов наиболее высока в текстах и точечной графике и практически сведена к нулю в архивах.

Кроме того, программы для архивации все же различаются реализациями алгоритмов сжатия, что соответственно влияет на степень сжатия.

В некоторые программы-архиваторы дополнительно включаются средства, направленные на уменьшение коэффициента сжатия Кс. Так в программе WinRAR реализован механизм непрерывного (solid) архивирования, при использовании которого может быть достигнута на 10 — 50% более высокая степень сжатия, чем дают обычные методы, особенно если упаковывается значительное количество небольших файлов однотипного содержания.

Характеристики архиваторов — обратно зависимые величины. То есть, чем больше скорость сжатия, тем меньше степень сжатия, и наоборот.

На компьютерном рынке предлагается множество архиваторов — у каждого свой набор поддерживаемых форматов, свои плюсы и минусы, свой круг почитателей, свято верящих в то, что используемый ими архиватор самый лучший. Не будем никого и ни в чем разубеждать — просто попытаемся беспристрастно оценить самые популярные архиваторы в плане функциональности и эффективности. К таковым отнесем WinZip, WinRAR, WinAce, 7-Zip — они лидируют по количеству скачиваний на софтовых серверах. Рассматривать остальные архиваторы вряд ли целесообразно, поскольку процент применяющих их пользователей (судя по числу скачиваний) невелик.

Сжатие файлов

Файл сжатия, используется для уменьшения размера файла из одного или нескольких файлов.

Когда файл или группу файлов сжимают, в результате этого «Архив», часто занимает от 50% до 90% меньше места, чем оригинальный файл(ы).

Наиболее распространенные типы сжатия файлов включают в себя: Zip, Gzip, RAR, Stufflf и 7z.

Каждый из этих методов сжатия использует свой уникальный алгоритм для сжатия данных.

Хотя каждый алгоритм сжатия разный, все они работают аналогичным образом.

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

Например, слова в тексте документа, могли бы быть заменены, номерами или другим типом короткого идентификатора.

Эти идентификаторы ссылаются на оригинальные слова, которые сохраняются как «ключевые» в сжатых файлах.

Например, слово «компьютер», может быть заменено номером 5, который занимает гораздо меньше места, чем само слово «компьютер».

Чем больше раз слово «компьютер», будет помещено в тексте документа, тем более эффективным будет сжатие.

В то время как сжатие файлов хорошо работает с текстовыми файлами, также хорошо сжимаются и двоичные файлы.

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

Однако, как только файл сжат, он должен быть распакован для того, чтобы позже его можно было просмотреть.

Поэтому, если вы загружаете или получаете сжатый файл, то вам нужно использовать программу декомпрессии файлов , например: WinZip или StuffltExpander, для распаковки файла, прежде чем вы сможете просмотреть оригинальное содержание.

Некоторые расширения файлов: ZIP; GZ; RAR; SITX; 7Z.

Степень сжатия информации зависит от нескольких причин:

Во-первых, большое значение имеет тип сжимаемых данных. Лучше всего сжимаются графические, текстовые файлы. Для них степень сжатия может быть от пяти до сорока процентов. Хуже сжимаются файлы исполняемых программ, загрузочных модулей, файлы мультимедиа.

Во-вторых, большое значение имеет метод сжатия.

В-третьих, немаловажно и то, какой архиватор используется. При выборе типа архиватора обычно руководствуются следующими соображениями: чтобы степень сжатия была как можно выше, а времени на упаковку и распаковку файлов уходило как можно меньше.

Сжатие происходит с помощью программ архиваторов. На сегодняшний день наиболее распространенными являются четыре архиватора — WinRar, WinAce, 7Zip и WinZip. Что касается последней программы, она не выдерживает никакой критики.

Более подробно остановимся на архиваторе — WinRar Данный архиватор может ассоциироваться со следующими типами файлов: RAR, ZIP, CAB, ARJ, LZH, ACE, 7-Zip, TAR, GZip, UUE, BZ2, JAR, ISO.

Программа поддерживает файлы практически неограниченного размера (до 8,589,934,591 Гб). Правда, для работы с файлами размером более 4 Гб вам необходимо работать в файловой системе NTFS.

При выборе оптимальных настроек для сжатия необходимо учитывать несколько моментов:

Несмотря на то, что WinRAR поддерживает формат ZIP, в большинстве случаев рекомендуется выбирать RAR. Это обеспечит более высокий уровень сжатия. Вы можете сжать файлы в ZIP, если вы не уверены, что на компьютере, на котором будут распакованы файлы, будет установлена программа, с помощью которой можно будет распаковать файлы в формате RAR.

Необходимо определиться, какой метод компрессии лучше всего использовать. Чем выше степень сжатия, тем больше времени уйдет на архивацию, поэтому тут нужно учитывать, для каких целей архивируются данные. Если это долгосрочное хранение, конечно же, имеет смысл подождать и получить архив с максимальной степенью сжатия, если же вам просто необходимо отослать несколько документов по почте, вам подойдет и обычная (Normal) степень сжатия.

Если вам необходимо достичь максимальной степени сжатия файлов, используйте опцию Create solid archive (Создать непрерывный архив). Однако, она имеет и свои недостатки. Во-первых, для распаковки таких файлов понадобится больше времени, чем для извлечения из обычного архива. Представьте себе, что в вашем архиве две сотни файлов. Если он создан обычным способом, вы без труда можете извлечь один из файлов. Если же вы использовали solid archive, тот тут будет иметь значение, каким по счету бы заархивирован нужный вам файл. Если он был в середине второй сотни, то для его распаковки программе будет нужно распаковать 150 файлов, пока она доберется до него. Создание архивов таким способом также может повлечь за собой большие утраты, ведь если архив окажется поврежден, вы потеряете все файлы, которые в нем находились. В случае же запаковки обычным способом вы сможете извлечь из поврежденного архива пусть не все, но большинство файлов.

Если необходимо создать большой архив, на это может уйти довольно много времени. WinRar позволяет определить, сколько примерно времени уйдет на выполнение того или иного задания. Для этого предназначена опция Benchmark and hardware test. Еще одна причина, по которой можно использовать эту опцию — определение возможных ошибок, которые могут возникнуть при архивации на компьютере той или иной конфигурации по причине аппаратного сбоя.

Среди других настроек WinRar’a можно отметить возможность создания самораспаковывающихся архивов с указанием пути распаковки. Такие файлы не требуют наличия на компьютере, на котором их планируется разархивировать, программы-архиватора. Подобные архивы получили название SFX-archives. Их недостатком по сравнению с обычными архивными файлами является больший размер, так как они, кроме собственно запакованных файлов, содержат также исполнительный EXE-модуль.

Cодержимое RAR-архива можно сделать невидимым. Для этого в настройках программы, в окне Archiving with Password нужно установить флажок напротив строки Encrypt File Names.

Можно также установить пароль на открытие архива. В результате ошибки передачи архива по локальной сети или скачивания его из Интернета, а также по причине аппаратного сбоя или вирусной атаки архив может быть поврежден. WinRar позволяет определить целостность данных, протестировав архив с помощью опции Test Archived Files.

Для того чтобы свести к минимуму вероятность потери данных, при создании архивов WinRar рекомендуется использовать опцию Put Recovery Record (этот флажок можно найти на вкладке General окна создания архива).

Если это было сделано, то в случае повреждения архива его можно будет восстановить.

Кроме этого в WinRar, можно уменьшить вероятность повреждения RAR-архива, указав при его создании размер информации для восстановления. Для этого нужно выполнить команду Commands > Protect Archive From Damage в окне Winrar. При этом объем Recovery Record не может превышать десяти процентов от общего размера архива.

Для восстановления поврежденных RAR-архивов необходимо выбрать нужный файл в окне WinRar и выполнить команду Tools > Repair.

WinRAR умеет встраиваться в контекстное меню, причем поддерживает не только меню проводника, но и других программ, например популярного файлового менеджера Total Commander. Это дает возможность быстро архивировать файлы, используя настройки по умолчанию и не открывая для этого окно программы. Кстати, настройки по умолчанию можно изменить, в соответствии с тем, какие требования вы предъявляете к своим архивам. Сделать это можно, открыв окно WinRar и выполнив команду Options > Settings. В этом окне нужно перейти на вкладку Compression и нажать кнопку Create Default. Настройки, заданные в этом окне и будут использоваться для быстрой архивации. Если же требуется изменить настройки архивации, это тоже можно сделать при помощи контекстного меню. Для этого нужно выбрать команду Add to Archive… Тут можно установить формат и степень сжатия, указать имя архива и выбрать другие параметры архивации.

WinRar позволяет сохранять установленные пользователем настройки в файл с расширением Reg. Позднее этот файл можно импортировать в программу, чтобы повторно использовать заданную конфигурацию. В этом файле хранится такая информация, как история архивов, которые недавно создавались, параметры сжатия по умолчанию и пр.

Еще одна удобная опция Winrar — возможность создания собственных закладок — Favorities. Очень часто бывает необходимо производить регулярное архивирование одних и тех же папок на жестком диске. Добавив в закладки информацию о месторасположении этих папок, можно быстро переходить в них в окне программы и производить архивацию необходимых файлов и вложенных директорий.

Ссылка на основную публикацию
Что означает ошибка 110
Ошибка 110 в Android происходит главным образом при обновлении или установке приложений из Google Play. Случается это из-за несовместимости ОС:...
Что выбрать windows 7 или windows 10
Сегодня в нашем блоге «Чо?! Чо?!» я раскрою все преимущества и недостатки новой операционной системы для ноутбуков, сравнив ее с...
Что в китае дешевле чем в россии
Я экономлю тысячи рублей, покупая товары из Китая через интернет Сегодня я расскажу Вам о том, что выгодно покупать в...
Что означает ошибка 963
Ошибки в Google Play дело достаточно частое, это не удивительно, ведь Плей маркет – это один из крупнейших магазинов приложений....