Datacompressie verkleint de bestandsgrootte. Kleinere bestanden nemen minder opslagruimte in beslag, worden sneller over netwerken verzonden en zijn goedkoper in onderhoud. De keerzijde is de rekenkracht. Comprimeren en decomprimeren kost CPU-tijd. Het doel is om meer te besparen op opslagruimte en bandbreedte dan je kwijt bent aan verwerking. Voor de meeste toepassingen is dit een logische afweging.
Compressie kent twee vormen. Lossless compressie behoudt elk bit van de originele data. ZIP-bestanden, PNG-afbeeldingen en FLAC-audio maken gebruik van lossless methoden. Lossy compressie verwijdert informatie die mensen waarschijnlijk niet zullen opmerken. JPEG-afbeeldingen, MP3-audio en H.264-video maken gebruik van lossy methoden. Het kwaliteitsverlies is reëel, maar vaak onmerkbaar bij normale instellingen. De keuze hangt af van het gebruik. Medische beelden vereisen lossless compressie omdat elke pixel telt. Een marketingfoto kan lossy compressie verdragen omdat de kijker het verschil niet zal merken. Compressiealgoritmen benutten patronen. Herhaalde reeksen, veelvoorkomende tekens en voorspelbare structuren worden efficiënter gecodeerd. Willekeurige data comprimeert niet. Daarom krimpen versleutelde bestanden en reeds gecomprimeerde media niet verder. Het algoritme vindt niets om te benutten. Entropie is de limiet.
Compressietypen
- Verliesvrij — exacte reconstructie, grotere bestanden
- Verliesgevend — benaderende reconstructie, kleinere bestanden
- Streaming comprimeert gegevens zodra ze binnenkomen.
- Op woordenboek gebaseerd — vervangt herhaalde patronen door verwijzingen
Compressie is een afweging. Opslag en bandbreedte aan de ene kant, kwaliteit en rekenkracht aan de andere kant. Kies de balans die het beste bij de taak past.
Comments
No comments yet. Be the first to share a thought.
Leave a comment