Kas yra duomenų suspaudimas be nuostolių?

Duomenų glaudinimas be nuostolių yra kompiuterinis failų saugojimo ir sujungimo į archyvus metodas, kuris užima mažiau fizinės vietos atmintyje nei failai kitu atveju neprarandant jokios informacijos, kurią turi duomenys. Priešingai, dėl nuostolingo glaudinimo sumažėja failo dydis, apytiksliai apskaičiuojant duomenis, o atkūrimas yra artimas pradinio failo turinio faksimilei. Algoritmai, naudojami duomenų glaudinimui be nuostolių, iš esmės yra supaprastintų taisyklių arba instrukcijų rinkinys, skirtas informacijos kodavimui naudojant mažiau atminties bitų, išlaikant galimybę atkurti pradinį duomenų formatą be pakeitimų.

Kai kurie įprasti failų tipai, kuriuose naudojamas nenuostolingas duomenų glaudinimas, yra „International Business Machines“ (IBM) kompiuterinis ZIP failas ir „Unix“ kompiuteriniai gzip failų archyvai. Taip pat naudojami vaizdo failų formatai, tokie kaip grafinis mainų formatas (GIF), nešiojamasis tinklo grafikas (PNG) ir bitmap (BMP) failai. Duomenų glaudinimo algoritmai taip pat skiriasi priklausomai nuo suglaudinamo failo tipo, o teksto, garso ir vykdomųjų programų failų variantai yra įprasti.

Dvi pagrindinės be nuostolių duomenų glaudinimo algoritmų kategorijos yra pagrįstos statistiniu įvesties duomenų modeliu ir duomenų failo bitų eilučių atvaizdavimo modeliu. Naudojami įprasti statistiniai algoritmai yra Burrows-Wheeler transformacija (BWT), Abrahamo Lempelio ir Jacobo Zivo (LZ77) algoritmas, paskelbtas 1977 m., ir Prognozavimo pagal dalinį atitikimą (PPM) metodas. Dažnai naudojami atvaizdavimo algoritmai apima Huffmano kodavimo algoritmą ir aritmetinį kodavimą.

Kai kurie algoritmai yra atvirojo kodo įrankiai, o kiti yra patentuoti ir patentuoti, nors kai kurių patentai taip pat pasibaigė. Dėl to glaudinimo metodai kartais gali būti taikomi netinkamam failo formatui. Dėl to, kad tam tikri duomenų glaudinimo metodai yra nesuderinami vienas su kitu, mišrių failų saugojimas dažnai gali pabloginti failo komponentą. Pavyzdžiui, vaizdo failas su suglaudintu tekstu gali rodyti atkurto teksto skaitomumo pablogėjimą. Skaitytuvai ir programinė įranga, kurioje naudojama gramatinė indukcija, gali išgauti prasmę iš teksto, saugomo kartu su vaizdo failais, taikydami vadinamąją latentinę semantinę analizę (LSA).

Kitas atvaizdavimo algoritmo metodas, skirtas duomenų suspaudimui be nuostolių, yra universalaus kodo naudojimas. Lankstesnis naudojimas nei Huffmano kodavimas, todėl nereikia iš anksto žinoti maksimalių sveikųjų skaičių reikšmių. Tačiau Huffmano kodavimas ir aritmetinis kodavimas užtikrina geresnį duomenų suspaudimo greitį. Taip pat stengiamasi sukurti universalius duomenų glaudinimo metodus, kurie sukurtų algoritmus, kurie gerai veiktų įvairiuose šaltiniuose.