Arhive i kompresija
Od kada postoji rad sa fajlovima, postoji i potreba da se fajlovi koji se ne koriste a suviše su vredni da se obrišu ili fajlovi koji se prenose "spakuju" u arhivu. Arhiva je jedan fajl koji u sebi sadrži više fajlova i iz koga ti fajlovi kasnije mogu biti vraćeni.
Inicijalno, arhive su služile samo za smeštanje fajlova (kao npr. TAR fajlovi na Linux-u), međutim, danas svi popularni formati arhiva uključuju i mogućnost kompresije.
Arhivski fajlovi
ZIP, RAR, ARJ – različiti formati arhiva. Trenutno su najpopularnije RAR i ZIP arhive. ARJ se danas slabo koristi – nekada je bio popularan zbog jednostavne mogućnosti deljenja arhive na više fajlova, ali danas RAR pruža tu istu mogućnost uz kvalitetniju kompresiju.
7Z (7-Zip) je arhiva koja pruža sve što i ostale arhive (dobar stepen kompresije, mogućnost zaštite podataka šifrom), s tim što je u pitanju projekat otvorenog koda i samim tim besplatan.
TAR i GZ predstavljaju arhive koje se koriste na Linuxu, ali ponekad i Windows korisnici mogu naići na fajlove spakovane na ovaj način. TAR označava običnu arhivu bez kompresije, dok GZ predstavlja kompresovan fajl (u pitanju je kompresija kakvu koristi i ZIP format). Česta pojava je da se TAR arhiva kompresuje u GZ format, i da se takav fajl označi kao TAR.GZ ili kraće TGZ. [1]
Kompresija predstavlja postupak smanjivanja veličine podataka. Postoje dva tipa kompresije:
- kompresija bez gubitka podataka (lossless) i
- kompresija sa gubitkom podataka (lossy).
Kompresija bez gubitka podataka
Kompresija bez gubitka podataka se obično zasniva na nekoj varijanti LZ77 (Lempel-Ziv), odnosno LZW (Lempel-Ziv-Welch) algoritma. Ovi algoritmi funkcionišu tako što u fajlu pronalaze jednake nizove bajtova (šablone) i izdvajaju ih u tzv. "rečnik". Na taj način, izbacivanjem dupliciranih šablona smanjuje se veličina fajla.
Kada se vrši dekompresija fajl se vraća u originalno stanje. Zbog toga što su vraćeni podaci "do u bajt" jednaki originalnom fajlu, ovakva vrsta kompresije naziva se "lossless", odnosno kompresija bez gubitaka.
Ovi algoritmi nisu svemogući. Zavisno od tipa fajla i oblika podataka postiže se veći ili manji stepen kompresije. Na primer, detaljna fotografija će imati mnogo niži nivo kompresije u odnosu na dijagram koji ima puno jednobojnih površina. Takođe, jednom kompresovani podaci ne mogu se dalje efikasno kompresovati.
Ovakva kompresija se koristi za programe i dokumente. Neki od najpoznatijih formata arhiva koriste ovakav tip kompresije (ZIP, RAR i slični), kao i različiti tipovi dokumenata (Office dokumenti, PDF fajlovi, BMP, GIF i PNG slike). Ako nam je bitno očuvanje kvaliteta audio fajlova, sačuvaćemo ih u FLAC formatu, koji koristi ovaj tip kompresije.
Kompresija sa gubitkom podataka
Kompresija sa gubitkom podataka koristi se kada podatke nije neophodno vratiti u potpuno isto stanje kao original. Takva kompresija se može upotrebiti na slikama i multimedijskom (audio i video) materijalu.
Ova kompresija pre svega zavisi od tipa podataka – slika, zvuk i video se kompresuju na različite načine. Takođe, lossy kompresija je, u nekom smislu, prilagođena čoveku. Na primer, kod kompresije zvuka, iz snimka se izbacuju sve promene u jačini i visini zvuka koje ljudsko uho ne primećuje, odnosno koje ne dostižu ovu razliku (JND – Just Noticeable Difference).
Podaci se dekompresuju korišćenjem različitih matematičkih metoda i dobijeni rezultat nikada nije jednak originalnim podacima. Međutim, kod ovih podataka to i nije toliko značajno, a stepen kompresije je daleko veći u odnosu na lossless kompresiju. Ovi algoritmi se koriste u nekim formatima slika (JPG na primer), zvuku (MP3 muzika) ili za video (MPEG, odnosno MP4 i DIVX kompresija).
Da bi se postigla maksimalna kompresija, uvek se vrši i dodatno pakovanje lossless metodom – zbog toga je praktično besmisleno npr. „zipovati“ JPG slike ili MP3 muziku.
- File Extension Library, Archive and compressed file extension list