Kaj je stiskanje podatkov brez izgube?

Stiskanje podatkov brez izgube je računalniška metoda za shranjevanje datotek in njihovo združevanje v arhive, ki zavzamejo manj fizičnega prostora v pomnilniku, kot bi datoteke sicer, ne da bi pri tem izgubili kakršne koli informacije, ki jih podatki vsebujejo. Nasprotno pa stiskanje z izgubo zmanjša velikost datoteke s približki podatkov, obnovitev pa je podobna originalni vsebini datoteke. Algoritmi, ki se uporabljajo za stiskanje podatkov brez izgub, so v bistvu niz poenostavljenih pravil ali navodil za kodiranje informacij z manj bitov pomnilnika, medtem ko še vedno ohranjajo možnost obnovitve podatkov v prvotno obliko brez sprememb.

Nekatere pogoste vrste datotek, ki uporabljajo stiskanje podatkov brez izgube, vključujejo računalniško zip datoteko International Business Machines (IBM) in računalniško podprto datoteko gzip z Unix. Uporabljajo se tudi formati slikovnih datotek, kot so grafični format za izmenjavo (GIF), prenosna omrežna grafika (PNG) in datoteke Bitmap (BMP). Algoritmi za stiskanje podatkov se razlikujejo tudi glede na vrsto datoteke, ki se stisne, s pogostimi različicami za besedilne, zvočne in izvedljive programske datoteke.

Dve glavni kategoriji algoritmov za stiskanje podatkov brez izgub temeljita na statističnem modelu vhodnih podatkov in modelu preslikave bitnih nizov v podatkovni datoteki. Uporabljeni rutinski statistični algoritmi so Burrows-Wheelerjeva transformacija (BWT), algoritem Abrahama Lempel in Jacob Ziv (LZ77), objavljen leta 1977, in metoda Prediction by Partial Matching (PPM). Algoritmi za preslikavo, ki se pogosto uporabljajo, vključujejo Huffmanov kodni algoritem in aritmetično kodiranje.

Nekateri algoritmi so odprtokodna orodja, drugi pa so zaščiteni in patentirani, čeprav so nekaterim tudi patentom potekla veljavnost. To lahko povzroči, da se metode stiskanja včasih uporabljajo za napačno obliko datoteke. Zaradi dejstva, da so nekatere metode stiskanja podatkov med seboj nezdružljive, lahko shranjevanje mešanih datotek pogosto poslabša komponento datoteke. Na primer, slikovna datoteka s stisnjenim besedilom lahko pokaže poslabšanje berljivosti besedila, ko je enkrat obnovljeno. Skenerji in programska oprema, ki uporabljajo slovnično indukcijo, lahko iz besedila, shranjenega skupaj s slikovnimi datotekami, izvlečejo pomen z uporabo tako imenovane latentne semantične analize (LSA).

Druga oblika metode algoritma preslikave za stiskanje podatkov brez izgub je uporaba univerzalne kode. Bolj prilagodljiva za uporabo kot Huffmanovo kodiranje, ne zahteva predčasnega znanja o največjih celoštevilskih vrednostih. Huffmanovo kodiranje in aritmetično kodiranje pa zagotavljata boljše stopnje stiskanja podatkov. V teku so tudi prizadevanja za izdelavo univerzalnih metod stiskanja podatkov, ki bi ustvarile algoritme, ki dobro delujejo za različne vire.