Архивация и сжатие данных
💻 Информатика · 8 класс
Что такое архивация и сжатие
Архивация — это объединение одного или нескольких файлов в единый файл-архив с уменьшением его размера. Уменьшение размера достигается за счёт сжатия данных — устранения повторов и избыточности в информации.
Программы, которые этим занимаются, называют архиваторами. Архив удобно передавать и хранить, но чтобы воспользоваться файлами, архив нужно распаковать — извлечь файлы обратно в обычном виде.
Зачем вообще сжимать данные? Во-первых, маленький файл быстрее передаётся по сети. Во-вторых, он занимает меньше места на диске. В-третьих, несколько файлов удобно объединить в один архив, чтобы не потерять и переслать их вместе.
Идея сжатия
Во многих данных есть повторы. Их можно записать короче. Например, строку из семи одинаковых символов «А» вместо AAAAAAA можно записать как «семь букв А». Это и есть простейшее сжатие: вместо длинной цепочки повторов хранится короткое описание.
Было: AAAAAAA (7 символов)
Стало: 7A (2 символа)
Два вида сжатия
| Признак | Без потерь | С потерями |
|---|---|---|
| Восстановление | Точно как исходник | Приблизительно |
| Для чего | Тексты, программы | Фото, музыка, видео |
| Примеры форматов | zip, rar | jpg, mp3 |
| Степень сжатия | Умеренная | Очень высокая |
Сжатие без потерь восстанавливает данные точь-в-точь. Его применяют там, где нельзя потерять ни бита: к текстам, таблицам, программам.
Сжатие с потерями отбрасывает малозаметные детали. Человек почти не замечает разницу в фотографии или музыке, зато файл уменьшается в разы. Применять его к тексту или программе нельзя: даже один потерянный символ может всё испортить.
Выбор способа зависит от данных. Для документа важна каждая буква — берут сжатие без потерь. Для фотографии в социальной сети допустима небольшая потеря качества ради лёгкости файла — подойдёт сжатие с потерями.
Правило. Уже сжатые данные почти не сжимаются повторно. Поэтому архивировать готовый файл jpg второй раз почти бесполезно — размер не уменьшится.Коэффициент сжатия
Качество сжатия оценивают коэффициентом: во сколько раз архив меньше исходных данных. Если файл был 200 Кбайт, а архив стал 50 Кбайт, то коэффициент равен 200 / 50 = 4.
Частая ошибка. Думают, что любой файл можно сжать в десятки раз. На самом деле текст из случайных символов почти не сжимается, потому что в нём нет повторов и закономерностей.
Кратко о главном
- Архивация объединяет файлы и уменьшает их размер.
- Сжатие убирает повторы и избыточность данных.
- Сжатие без потерь восстанавливает данные точно — для текстов и программ.
- Сжатие с потерями отбрасывает детали — для фото, музыки, видео.
- Уже сжатые данные повторно почти не сжимаются.