İçeriğe geç

ZIP dosyam neden içindeki dosyalardan daha büyük?

Haven Zip ekibi · · 2 dk okuma

Tatil fotoğraflarının olduğu klasörü seçip ZIP oluşturuyorsunuz ve arşiv, fotoğrafların kendisinden birkaç kilobayt daha büyük çıkıyor. Bir hata yok. Sıkıştırma yalnızca içinde hâlâ örüntü kalmış veride işe yarar; bugün elimizden geçen dosyaların çoğunda o örüntüler, dosyayı üreten program tarafından zaten alınmıştır.

Sıkıştırma, tekrarları atmaktır

ZIP'in içindeki Deflate'ten 7z'nin içindeki LZMA'ya kadar her genel amaçlı sıkıştırıcı aynı iki şeyi yapar. Tekrar eden bayt dizilerini bulup tekrarları kısa geri-referanslarla değiştirir ve sık geçen baytlara nadir olanlardan daha kısa kodlar verir. Metin, tablo, kaynak kod, günlük dosyaları ve sıkıştırılmamış bitmap'ler tekrarla doludur; bu yüzden yüzde 60 ile 90 arasında küçülürler.

Bir JPEG fotoğraf, MP4 video, MP3 şarkı ya da PNG görsel ise zaten kendi verisi için tasarlanmış bir sıkıştırıcıdan geçmiştir. Geriye kalan, Deflate'in gözünde rastgele gürültüden farksızdır. Bulunacak tekrar yoktur; sıkıştırıcı baytları olduğu gibi kaydeder ve üstüne kendi kayıt bilgisini ekler.

Fazla baytlar nereden geliyor

Bir ZIP arşivi her dosyayı yerel bir başlıkla sarar ve aynı üstveriyi sonda bir merkezi dizinde tekrar eder. Dosya başına kabaca 60 ile 100 bayt artı dosya adının iki kopyası. Bin fotoğraf için yalnızca bu ek yük 100 KB civarındadır; zaten sıkıştırılmış bir klasörün ZIP'inin biraz daha büyük çıkmasının, hiçbir zaman küçülmemesinin sebebi budur.

7z ve RAR için de durum aynıdır; yalnız 7z dizini sıkıştırılmış tuttuğu için ek yükü daha küçüktür.

Bunun yerine ne yapmalı

Amaç göndermek ya da saklamak için tek bir dosya elde etmekse, depola seviyesini (seviye 0) kullanın; arşivleyici sıkıştırılamayanı sıkıştırmaya çalışarak zaman harcamasın. Haven Zip bunu sıkıştırma seviyesi kaydırıcısı olarak sunar; seviye 0 anında biter ve medya için seviye 9 ile aynı boyutu üretir.

Amaç daha küçük bir dosyaysa kaynağında sıkıştırın. Fotoğrafları daha düşük JPEG kalitesiyle dışa aktarın ya da videoyu yeniden kodlayın, sonra sonuçları arşivleyin. Arşivleyiciler, asıl kodlayıcının çoktan attığı veriyi geri getiremez.

  • Metin, kod, CSV, XML, JSON: yüksek kazanç; ZIP ya da 7z, seviye 5 ve üstü.
  • JPEG, PNG, MP4, MP3, görselli PDF, DOCX: neredeyse sıfır kazanç; seviye 0 ya da 1.
  • Karışık klasörler: solid sıkıştırmalı 7z dosyalar arasındaki ortak içeriği bulur ve ZIP'i çoğu zaman geçer.

İlgili

Tüm yazılar