Datu arhivēšana ir dotās informācijas glabāšanai vai pārsūtīšanai nepieciešamā datu daudzuma samazināšanas process, tipiski izmantojot kodēšanas tehnoloģijas.
Eksistē daudzas tehnikas, ko lieto ciparu skaitļotāji un sakaru ierīces, lai arhivētu (saspiestu) bināros datus. Binārajā sistēmā katru alfabēta burtu vai ciparu pārstāv astoņu bināro ciparu virkne. Elemantārā datu saspiešanas sistēma ir atslēgas vārdu kodēšana ar kuru bieži lietoti vārdi, tādi kā “bet” tiek pārvērsti divu baitu kodā. Uzlabotākas tehnikas analizē, identificē un tad aizvieto biežāk parādošos teksta paraugus ar vienu simbolu; piemēram, “šana” tādos vārdos kā “skriešana” varētu tikt pārvērsta par “$”, tādējādi ievērojami samazinot liela teksta bloka izmēru. Šīs tehnikas var arī pārstāvēt simbolus ar virknēm, kas īsākas par astoņiem bitiem. Tad simbolus, ko lieto biežāk kodē ar mazāku bitu skaitu. Prasība veiksmīgai atkodēšanai shēmās, kas lieto bitu virknes ar dažādiem garumiem ir ka bitiem, kas apzīmē simbolu beigas, jābūt viennozīmīgi identificētiem. Hafmaņa (Huffman) kodēšana ir šīs tehnikas plaši izmantota forma. Plūstošā garuma (Run-length) kodēšana tiek lietota datiem, kas satur atkārtojošos simbolus, tā glabā atkārtotā simbola kodu vienreiz un norāda parādīšanos reižu skaitu.
Saspiešanas algoritmi var palielināt datu glabāšanas un pārsūtīšanas efektivitāti, samazinot lieko datu apjomu. Saspiešanas algoritms par ieejas datiem ņem avota tekstu un rada tam atbilstošo saspiesto tekstu, turpretim atarhivēšanas algoritms par ieejas datiem ņem saspiesto tekstu un no tā izejā iegūst sākotnējo avota tekstu. Lielākā daļa saspiešanas algoritmu sākotnējo tekstu uzskata par rindu salikumu, kas sastāv no sākotnējā teksta alfabēta burtiem.…