Архивиране на данни
Поради активната работа с компютри в наши дни, се забелязва непрекъснато нарастване на броя на използваните файлове и техния обем. За да се справим по-лесно с големия брой и големите размери на файловете ни помагат технологиите, наречени архивиране (англ. archiving) и компресиране (англ. compressing).
Архивиране на данни
Да се архивира група от файлове означава да се създаде нов файл, наричан архив (англ. archive), който съдържа копие на всеки един от архивираните файлове. С архивираните файлове не можем да си служим директно, но когато се налага, всеки от тях може да бъде извлечен от архива, в обичайния му формат, и да бъде използван според предназначението му. Обратното действие – възстановяването на оригиналния файл от копието в архива – наричаме разархивиране.
Архивирането на данни се налага, най-вече, за да не се претрупва твърдият диск на компютъра с документи и програми, които се използват сравнително рядко. Обичайно е, такива програми и документи да се архивират и да се съхраняват на външен носител (CD, DVD, флаш-памет или външен диск).
Архивиране си струва да използваме и когато разполагаме с група от файлове с общо предназначение и при работа с тях, а най-вече при пренасянето им от едно място на друго, бихме искали всички тези файлове да са налични. Да си припомним как при създаване на компютърна презентация с обемисти видео-материали, програмата MS PowerPoint ни предоставя възможност за избор дали да вмъкнем тези материали в презентацията, или да ги свържем с нея. Когато искаме да пренесем презентацията на друг компютър, трябва заедно с *.pptх файла да пренесем и всички, свързани с него, файлове. В такъв случай, само събирането на необходимите ни файлове в архив ще гарантира успешното пренасяне на презентацията.
За работа с архиви са необходими специализирани програми, които се наричат архивиращи програми (или архиватори). С такава програма може да се архивира един файл, група от файлове, една или няколко папки и дори цял твърд диск. Архивирането на цял твърд диск се използва по-рядко.
Основните функции на всяка архивираща програма са:
🟢 създаване на архив с посочени от потребителя файлове;
🟢 добавяне на нови файлове в архива;
🟢 подмяна на архивирани файлове с техни нови версии;
🟢 изтриване на файлове от архива;
🟢 справка за съдържанието на архива и др.
Различните архивиращи програми имат и свои специфични функции. С възможностите на архивиращата програма 7-Zip, която използвахме в урока за инсталиране и деинсталиране, ще се запознаем в този и в следващия урок.
Компресиране на данни
Архивиране с компресия
Много програми използват компресиране на данните, с които работят. На практика повечето от графичните, звукови и видеоредактори компресират съответните обекти с повече или по-малко загуби. От много отдавна, обаче, компресирането на данни е станало неотменна част от процеса на архивиране на данни. Днес на практика няма архивираща програма, която да не използва компресиране. И това е напълно обяснимо, защото обикновено един архив съдържа много файлове и е с много голям обем. При това положение, ненужното на пръв поглед архивиране на един отделен файл добива смисъл – архивирането на такъв файл е равносилно на компресиране на файла.
Необходимостта от архивиране и компресиране на данни е осъзната отдавна от производителите и потребителите на софтуер и се предлага още при ОС с буквено-цифров (команден) интерфейс. В ОС Unix и подобните на нея (различните версии на Linux, например) са популярни архивиращите програми TAR и GZIP. Най-популярни архивиращи програми, които работеха в ОС DOS, бяха ARJ, AIN, RAR, PKZIP и PKUNZIP. За работа в ОС с графичен интерфейс най-използвани са WinZIP, WinRAR, MacZIP, SmartZIP и др. Използването на изброените програми изисква лиценз.
Когато архивът е направен с WinZIP, казваме че този файл е в ZIP-формат, когато е с WinRAR – че е в RAR-формат. Това са двата най-популярни архиватора и всеки от тях работи с архивите (форматите) на другия.
Архиваторът 7-Zip
Ще се запознаем по-подробно с архиватора 7-Zip, който инсталирахме на компютрите в предишен урок. Както вече знаем, тази програма се разпространява като свободен софтуер и има редица предимства:
🟢 лесно се инсталира;
🟢 поддържа различни формати за архивиране и компресия;
🟢 интерфейсът с потребителя е подобен на този в Windows Explorer;
🟢 за форматите ZIP и GZIP архиваторът 7-Zip постига степен на компресия, която е до 10% по-добра от тази на PKZIP и WinZIP;
🟢 предлага диалог на български език.
След инсталирането, архиваторът се стартира от бутона Start/All Programs/7-Zip/7-Zip File Manager. На Фиг. 1 е показан прозорецът на програмата. Най-отгоре е лентата със стандартните за ОС Windows менюта – Файл (File), Редактиране (Edit), Показване (View), Любими (Favorites), Инструменти (Tools), Помощ (Help). Под нея е лентата с инструменти, с помощта на които се осъществяват следните операции:
🟢 Добавяне – добавя файл към съществуващ архив или създава нов архив;
🟢 Извличане – разархивира част от архив или цял архив;
🟢 Тестване – проверява създаден вече архив;
🟢 Копиране – копира файлове от и в съществуващи архиви;
🟢 Изтриване – изтрива един или няколко файла от архив;
🟢 Информация – дава подробна информация за даден архив, файл или папка.
При всяка операция, файловете, с които ще се извърши операцията (или съответните папки) трябва да са маркирани.
За пример да създадем един архив. В кореновата папка на устройството С:\ създайте папка Arhivirane и копирайте в нея подпапката Krushuna на папката Resources\Razdel3 от електронните ресурси към учебника.
Отваряме списъка на комбинираната кутия, означена на Фиг. 1 с Пълното име на текущата папка или файл. Щракваме двукратно с левия бутон на мишката върху реда Компютър от списъка. Избираме последователно устройството C:\, папката Arhivirane и папката Krushuna, за да видим файловете, които ще архивираме. Връщаме се обратно в папката Arhivirane с бутона Предишна папка, показан на Фиг. 1 (или с натискане на клавиша BackSpace).
Маркираме папката Krushuna и натискаме бутона Добавяне. Отваря се диалоговият прозорец Добавяне на архив (Фиг. 2). В комбинираната кутия Архив оставяме предлаганото от програмата име Krushuna.7z (по премълчаване, програмата предлага за име на архива, името на папката, която ще архивираме) или написваме в полето избрано от нас име на архива с разширение 7z.
От бутона, намиращ се вдясно на полето Архив, може да се избере папка, различна от текущата, в която да се запише архивът. След натискане на бутона OK се отваря прозорец, който визуализира процеса на архивиране и се затваря след като архивирането завърши.
След приключване на архивирането, в работното поле на прозореца, освен папката Krushuna, ще се покаже и файлът-архив Krushuna.7z. Нека маркираме папката и натиснем бутона Информация. Размерът на папката е показан в страницата General на отворилия се диалогов прозорец. Да направим същото и с файла-архив. Сравнете размерите и определете каква е получената степен на компресия? Сравнете получения от вас резултат с оценката на компресията (атрибута Ratio), дадена в страницата Archive на диалоговия прозорец.
За да разгледаме съдържанието на архива, щракваме два пъти с левия бутон на мишката върху името му. В полето за съдържание на архив се показва папката Krushuna, а в полето за пълното име на отворения файл – C:\Arhivirane\Krushuna.7z. С това програмата показва, че е отворила архива Krushuna.7z и той съдържа една папка. Ако отворим тази папка ще видим файловете, които са архивирани заедно с нея. Програмата 7-Zip, както и Windows Explorer, дава възможност да сортираме файловете в архива по Име, Размер и т.н., като натиснем съответния бутон в лентата (Фиг. 3).
За съжаление, когато архивът съдържа много файлове, не може да се види кой файл до каква степен е компресиран. За да установим това, трябва да създадем архив, който съдържа само интересуващия ни файл. Да се върнем в папка C:\Arhivirane и да изтрием файла Krushuna.7z. Да отворим отново папката Krushuna и да архивираме поотделно файловете k_1_1.bmp и k_1_2.jpg. Вижда се, че размерът на архива k_1_1.7z е много по-малък от размера на компресирания в него файл k_1_1.bmp (Фиг. 3). Пресметнете каква е степента на компресията.
Сега да разгледаме архива k_1_2.7z. Ако сравним размера на архива с размера на компресирания в него файл k_1_2.jpg ще видим, че двата размера не се различават много. Понякога, вместо да се намали, размерът на архивирания JPG файл може даже да се увеличи! Причината е, че графичните изображения, съхранени във формàта JPG, са компресирани, а във формàта BMP – не са. Затова няма смисъл да се архивират отделни файлове с разширение JPG. Подобен ефект – невъзможност за компресиране, може да се наблюдава и при файловете, съдържащи изпълними програми – с разширения .EXE и .COM. Но причината там е съвсем друга – отсъствието в такива файлове на условия за компресиране (дълги последователности от еднакви байтове или често срещащи се редици от едни и същи байтове).
Естествено, никаква компресия няма да получим и ако се опитаме да архивираме файл, който е архив, създаден с друг архиватор.
Речник
Въпроси и задачи
1. Има ли смисъл да се използва архивиране, ако: а) се налага да изпратите по електронната поща файл с размер 1 КВ;
б) твърдият ви диск е почти пълен и трябва да освободите място, за да може оперативно да записвате данни на него;
в) от последната екскурзия на класа сте заснели филм с продължителност 1 час и искате да го копирате на DVD и да го раздадете на вашите съученици;
г) ваш познат иска да му запишете, колкото може повече, песни от вашата колекция, за да ги прехвърли на своя компютър;
д) за презентацията си сте намерили илюстрация във формат .TIF с размер 100 MB и трябва да я прехвърлите с флаш-памет на училищния компютър;
e) имате 100 илюстрации във формат .JPG, всяка с размер около 1 MB и трябва да ги прехвърлите с флаш-памет на училищния компютър.
2. Посочете файлови формати, за които компресирането няма ефект. Обяснете причините.
3. Компресирайте с алгоритъма от урока следната последователност:
7 7 3 8 8 8 8 8 2 3 4 4 4 5 6 6 6 6 6 6 6 6 6 4 4 4 4 4.