Zip, Rar, 7z, Gzip, BZip2, Tar dll. Saya dengar 7z adalah rasa bulan ini, mengapa? Apakah yang terbaik untuk semua situasi atau apakah ada pilihan yang lebih baik untuk situasi tertentu.
Atau mungkin pengarsipan file yang sebenarnya yaitu WinZip, WinRar, 7Zip dll (sebagai lawan format) memiliki efek yang lebih besar?
Dalam jawaban Anda, bisakah Anda menjelaskan jenis pengorbanan kecepatan / kompresi seperti yang digunakan format yang Anda sebutkan.
Harap berikan tautan ke tes empiris apa pun yang mendukung jawaban Anda.
Latar Belakang: Saya perlu membuat cadangan indeks pencarian khusus yang membuat sekitar 3000 file yang relatif kecil (kurang dari 10MB), masing-masing berisi banyak data berulang.
(Seperti biasa, Wikipedia memiliki artikel yang relevan tetapi bagian tentang perbandingan kinerja singkat.)
Terima kasih
Bacaan yang disarankan:
Kompresi File di Era Multi-Core (Jeff Atwood alias CodingHorror, februari 2009)
Dan mengenai algoritma:
sumber
Ini bukan soal efisiensi dan kecepatan. Tentu mereka penting dan Anda dapat melihat tolok ukur untuk itu dan memilih dengan bijak dari opsi (meskipun saya akan merekomendasikan beberapa tolok ukur sederhana Anda sendiri dengan data Anda sendiri di server Anda sendiri). Tetapi pengarsipan mengarah pada titik tertentu untuk mengakses data Anda lagi (jika tidak, mengapa tidak menghapus saja?). Atau mungkin bertahun-tahun di jalan Anda tidak akan mengakses data sama sekali, tetapi seseorang pihak ketiga. Pilih sesuatu yang akan ada saat Anda perlu mengakses data dan sesuatu yang dikenali orang. Saya pribadi menggunakan 7zip, tetapi ketika saya mengarsipkan file, orang lain mungkin perlu saya menggunakan zip. Mereka tahu itu, banyak alat bisa menanganinya. Mungkin tidak secepat atau sekecil itu, tetapi membantu dengan faktor manusia.
sumber
lzma tampaknya berkinerja sangat baik di kedua rasio kompresi dan kecepatan.
Dalam http://tukaani.org/lzma/benchmark benchmark berikut , pengaturan tercepat untuk lzma memberi waktu kompresi jauh lebih cepat daripada opsi bzip2 tercepat, sementara masih memberikan kompresi lebih baik daripada opsi bzip2 paling lambat:
Ia bekerja sangat baik dengan data biner, tapi saya pikir saya membaca beberapa tolok ukur teks biasa di mana bzip2 mengungguli itu.
Halaman manual lzma layak dibaca:
sumber
Lihatlah entri Wikipedia ini . Menuju ke bawah, "Perbandingan efisiensi". Ini akan memberi Anda persentase kompresi, dan waktu yang dibutuhkan, kira-kira. Semua angka itu akan bervariasi (tergantung kecepatan) berdasarkan kecepatan mesin yang digunakan, jumlah memori, dll.
Lebih banyak tolok ukur kompresi:
sumber
Membandingkan zip, 7z, rar dengan dua case
Tergantung pada apa yang Anda kompres, tetapi secara umum 7z lebih baik menggunakan beberapa prosesor, dan format kompresi 7z itu sendiri menghasilkan kompresi yang lebih tinggi daripada zip, dan kadang-kadang lebih tinggi dari rar (walaupun rar dan 7z hampir sama, tetapi rar tidak gratis ...)
Tes saya beberapa bulan lalu memberikan hasil ini:
Mengompresi file database akses 10MB tunggal:
Mengkompresi folder yang berisi lebih dari sembilan ribu file dari berbagai jenis (903.488KB) dan mendapatkan yang berikut (ini adalah kombinasi dari kode sumber dan semua alat di sekitarnya untuk perangkat lunak yang sedang dikembangkan):
Untuk keperluan waktu, ini pada Core2 Duo, 2GHz, 1GB RAM, dan hard drive yang murah.
Jadi 7z memberikan peningkatan substansial dalam rasio kompresi dalam dua kasus yang saya uji di atas dan di luar zip, dan bahkan meningkat pada rar, tetapi 7z tentu lebih lambat. Tidak begitu signifikan, tetapi cukup untuk dicatat.
-Adam
sumber
Saya baru saja menginstal dar (tetapi belum memiliki kesempatan untuk bermain dengannya). Ini mirip dengan tar dengan kompresi gzip atau bzip2, dengan kemampuan tambahan untuk membagi arsip menjadi beberapa bagian, dan menghitung paritas sehingga jika satu atau lebih bagian rusak, ia dapat direkonstruksi dari file parity.
sumber