Veri Sıkıştırma, hacmini azaltmak için gerçekleştirilen bilgilerin dönüştürülmesi anlamına gelir. Başka herhangi bir bilgi işlemini depolayan, işleyen, ileten ve gerçekleştiren donanım kaynaklarının rasyonel kullanımını sağlamak için kullanılır.
NetApp depolamasında Veri Sıkıştırma
Veri Sıkıştırma işlemi, bozulmamış (sıkıştırılmamış) verilerin özelliği olan fazlalığın ortadan kaldırılmasına dayanır. Bilgi fazlalığının en basit örneği, metinde aynı kelimenin çok fazla tekrarlanmasıdır.
Bu tür fazlalıkları ortadan kaldırmak için, sık karşılaşılan kelimeyi kodlanmış ve kesin olarak belirtilen hacme sahip başka bir veri parçasına referansla değiştirmeniz gerekir.
Verilerin «ağırlığının” azaltılması, çok sık tekrarlanan veri türlerinin kodlanmış sözcükleriyle ve çok nadir bulunan verilerin uzun kodlarıyla (entropi kodlama) değiştirilerek elde edilebilir. Verilerde fazlalık yoksa (şifreli bilgiler, «beyaz gürültü», kısa sinyal vb.), bilgi kaybetmeden sıkıştırmak mümkün olmayacaktır.
Kayıpsız Veri Sıkıştırma, gerekirse orijinal bilgileri tamamen geri yüklemenizi sağlayan bir işlemdir, çünkü kapladığı alandaki azalmaya rağmen depolanan bilgi miktarı azalmaz.
Yukarıdaki olasılık, olasılıkların mesajlara eşit olmayan bir şekilde dağılması durumunda ortaya çıkabilir. Örneğin, teoride mümkün olan mesajların bir kısmı bu mesajların erken kodlamasında bulunmadığında.
Bilinmeyen veri türleri için Veri Sıkıştırma algoritmaları
Bilinmeyen bir biçime sahip verileri sıkıştırmanın 2 ana yöntemini ayırt edebiliriz:
- Her bir sıkıştırılabilir karakter, orijinal haliyle çıktı arabelleğine yerleştirilir veya sıkıştırılabilir birkaç karakterden oluşan bir grup, kodlanmış karakterlerden oluşan benzer bir gruba referansla değiştirilir. Bu yöntem en çok kendi kendine ayıklanan yazılımların oluşturulmasında kullanılır.
- Sıkıştırılan her sembol dizisi için istatistikler bir kez veya sürekli olarak toplanır (koddaki verilerin oluşma sıklığı). Bu istatistiklere dayanarak, bir sonraki kodlanmış karakterin (veya sıralarının) değerinin olasılığı belirlenir. Daha sonra, yaygın olarak bulunan veri türlerini kısa kod sözcükleriyle ve nadir olanları daha uzun kod sözcükleriyle değiştirmek için bir tür entropi kodlaması kullanılır.