Tuesday, 1 May 2012

Kompresi File Sampai Maksimal

Dengan pengaturan yang pas, 7-Zip bisa mengompres file dengan sangat baik. Apa saja yang harus diatur? Mari ikuti biar mengerti.
7-zip termasuk keluarga file archiver dengan tujuan membuat ukuran file lebih kecil dari aslinya agar lebih mudah didistribusikan. 7-Zip, secara gratis, bisa diperoleh dari situs web www.7-zip.org. Ketika sebuah arsip ingin dibuat dengan 7-Zip (mengklik kanan satu atau beberapa file, memilih [7-Zip] > [Add to Archive]), pengguna akan dihadapkan pada beberapa pilihan. Apa yang ia pilih berdampak pada hasil kompresi. Kalau salah pilih, kompresi tak akan maksimal.
Karena itu,  ada beberapa hal yang perlu diketahui agar dapat membuat arsip file dengan kompresi paling optimal. Artinya, ukuran file arsip yang dihasilkan dibuat sekecil mungkin atau istilah teknisnya adalah rasio kompresi yang tinggi.
7-zip yang digunakan pada artikel ini adalah 7-Zip 4.47 Beta.  Versi stabil yang dipakai secara umum adalah versi 4.42. Bedanya tipis. Pada 7-Zip 4.47 Beta ada pilihan baru yakni [Solid Block Size] dan [Number of CPU threads]. Pilihan [Solid Block Size] menggantikan pilihan [Create Solid Archive] yang ada di versi 4.42. Sedangkan [Number of CPU threads] menggantikan [Multi-threading].
Dengan mengaktfikan [Create Solid Archive] pada versi 2.42, kompresi yang dihasilkan lebih baik. Sedangkan di 4.47, cukup jangan memilih pilihan [Non-Solid] pada [Solid Block Size].
Untuk pilihan Number of CPU threads, menurut manual 7-zip, jika anda memilih 2 thread, kecepatan kompresi file akan meningkat, pilihan ini hanya untuk metode LZMA.
Proses pembuatan kompresi file dengan 7-Zip dimulai dengan memilih file, kemudian mengklik kanan file itu, memilih [7-Zip], dan mengklik [Add to archive]. Kemudian, muncullah kotak dialog milik 7-Zip.
Format Arsip
Pilihan pertama adalah Archive Format yang digunakan untuk menentukan format arsip yang dihasilkan. Pilihannya terdiri dari: 7z (format andalan 7-Zip), BZIP2, GZIP, Tar, dan ZIP. Format yang umum dipakai pada sistem operasi Windows adalah 7z dan ZIP. Karena ZIP sangat umum dan fleksibel (dikenali oleh hampir seluruh pembuat arsip), format ZIP-lah yang dipilih.
Tingkat Kompresi
Selanjutnya, tingkat kompresi ditentukan pada bagian Compression Level. Pilihan yang ada terdiri dari [Store], [Fast], sampai [Ultra]. Pilihan [Store] akan membuat arsip tidak dikompres, hanya dibungkus ke dalam 1 paket saja. Ukuran file hasil kompresi terkecil diperoleh dengan memilih [Ultra]. Namun, dengan memilih [Ultra], waktu yang diperlukan untuk memampatkan file menjadi lama. Jadi, kalau tidak terlampau terburu-buru, pilih saja [Ultra].
Pilihan selanjutnya adalah metode kompresi (Compression Method). Untuk format zip, pilihan metode kompresi terdiri dari [Deflate], [Deflate64], dan [Bzip2]. Dari ketiga pilihan yang ada, [Deflate64] memberikan hasil kompresi yang terbaik.
Deflate adalah metode yang standar digunakan pada format ZIP. Sedangkan metode Deflate64 adalah Deflate dengan ukuran dictionary 64KB. Kelemahan Deflate64 adalah kurangnya fleksibilitas. File yang dikompres dengan metode Deflate64 hanya bisa dibuka oleh program yang mendukung dekompresi Deflate64. Sebagai informasi, selain 7-Zip, Winrar juga mendukung Deflate64.
Kalau file hasil kompresi hendak didistribusikan secara luas, hindari format yang tidak standar. Umumnya format yang digunakan untuk distribusi di internet adalah format zip dengan metode Deflate.
Word Size
Menurut manual 7-Zip, word size digunakan untuk mencari rangkaian bytes yang identik untuk kompresi. Semakin besar word size, semakin baik rasio kompresinya. Untuk ZIP (Deflate64), pengaruhnya tak teralu besar.
Pilihan yang boleh dicoba adalah 192. Kenapa 192? Berdasarkan pengalaman, pilihan lebih besar dari 192 memberikan hasil ukuran kompresi bertambah beberapa byte.
Cara Tepat Kompres File Gado-Gado
Bagaimana cara yang tepat untuk mengompres sekumpulan file yang terdiri file biner dan file teks? Berikut ini adalah beberapa cara yang dapat digunakan.
1.    Cari kelompok file yang jumlahnya terbanyak. Biner atau teks yang paling banyak? Jika file biner lebih banyak daripada file teks, maka kompres dengan metode LZMA. Jika sebaliknya, maka gunakan metode PPMD. Contoh:  jika dalam satu folder ada 12 file - 2 file biner dan 10 file teks. Seandainya 12 file tersebut mempunyai ukuran rata-rata hampir sama, metode yang tepat adalah menggunakan PPMD. Tapi, jika ada perbedaan besar antara satu kelompok file dengan kelompok file lainnya, maka anda harus gunakan cara nomor 2.
2.    Inilah cara nomor 2. Lihat ukuran file-nya. Cari kelompok yang ukurannya terbesar - biner atau teks? Misalnya dalam satu folder ada 12 file - 2 file biner dan 10 file teks. Jika ukuran 2 file biner tersebut lebih besar daripada ukuran 10 file teks, maka metode yang harus digunakan adalah LZMA.
3.    Kalau pengetahuan soal mana file biner mana file teks terbatas, coba saja kedua metode - LZMA dan PPMD. Kemudian gunakan metode yang memberikan hasil kompresinya terkecil. Tapi, dengan cara ini, bersiap-siaplah untuk kerja 2 kali.