Haruskah saya menggunakan kompresi xz atau lzma?


29

Saya bertanya-tanya karena di Ubuntu 10.10 saya memiliki kemampuan untuk membuat arsip xz dan lzma. Haruskah saya beralih ke xz?

http://en.wikipedia.org/wiki/Xz

http://en.wikipedia.org/wiki/Lzma


Perhatikan bahwa ada juga tipe arsip lz yang lebih baru yang pada dasarnya telah diperkenalkan "sejak diskusi ini" stackoverflow.com/a/49456056/32453 jadi jangan bingung dengan yang lzmadisebutkan di sini :)
rogerdpack

Jawaban:


12

Penghitungan ini memberikan beberapa informasi bagus tentang masalah ini. Tampaknya LZMA memiliki rasio kompresi dan kinerja yang sedikit lebih baik daripada XZ tetapi XZ umumnya lebih disukai karena 'alasan praktis' (Saya tidak yakin apa ini).

XZ adalah implementasi dari algoritma lzma2 dan lebih baik dalam mengompresi data 'tidak terkompresi':

lzma2 adalah metode kompresi yang digunakan oleh kompresor LZMA2 7-Zip. LZMA2 adalah versi modifikasi dari LZMA yang menawarkan rasio kompresi yang lebih baik untuk data yang tidak dapat dikompresi (data acak diperluas sekitar 0,005%, dibandingkan dengan 1,35% dengan LZMA asli), dan secara opsional dapat mengkompres beberapa bagian file besar secara paralel, sangat meningkatkan kecepatan kompresi tetapi dengan kemungkinan pengurangan rasio kompresi (lihat LZMANumBlockThreads). Seperti LZMA, ia dapat mengkonsumsi banyak memori; lihat tabel di atas. Jika tingkat kompresi tidak ditentukan, standarnya adalah maks.

( http://www.jrsoftware.org/ishelp/index.php?topic=setup_compression )

Anda harus baik-baik saja menggunakan salah satunya.


Karena penasaran, apakah Anda memutuskan mana yang akan digunakan?
dv3500ea

1
Sebenarnya setelah sedikit pengujian sepertinya xz akan menjadi jalan maju. Ini juga menghemat sedikit kompresi (10mb somtimes) pada hal-hal biner di atas lzma.
NightwishFan

8
Itu bukan jawaban yang tepat, sehubungan dengan "OK menggunakan salah satu". Bahkan pada saat dia memposting pertanyaan ini, file .lzma diketahui diganti sepenuhnya oleh .xz dalam waktu dekat. Penulis LZMA-Utils mengatakan di depan umum, mereka tidak digunakan lagi dan menggunakan xz-utils mulai dari 5.00 dan seterusnya. Rilis LZMA-Utils terakhir adalah 2008-07-30, bahkan pada waktu bertahun-tahun. Jadi kompresi bijaksana, perbaikan mungkin bukan faktor penentu besar. (ironisnya kalau-kalau) Tapi alasan "politis" seharusnya menjadi alasan signifikan untuk menggunakan XZ-Utils, dan menghindari membuat arsip .lzma baru.
JM Becker

1
@ TechZilla Sudahkah Anda mempertimbangkan untuk memposting tanggapan Anda sebagai jawaban alternatif?
ændrük

1
Alasan praktis untuk LZMA2 adalah dukungan multithreading. Performa threading tunggal dan rasio kompresi sedikit lebih rendah tetapi pada sistem dengan beberapa core yang digunakan, mengharapkan LZMA2 menjadi lebih cepat saat decoding.
Jonathan Baldwin

42

Saya tidak setuju dengan kesimpulan @ dv3500ea, "OK menggunakan salah satu", karena itu tidak pantas. Bahkan pada tanggal / waktu yang diposting, .lzmafile diketahui diganti sepenuhnya oleh .xz. Penulis kedua Utils mengatakan secara terbuka , pengguna harus beralih ke XZ-Utils ≥ 5.00. Rilis LZMA-Utils terakhir adalah 2008-07-30, dan dihentikan.

LZMA Utils adalah perangkat lunak kompresi data lama dengan rasio kompresi tinggi. Utilitas LZMA tidak lagi dikembangkan, meskipun bug kritis dapat diperbaiki selama memperbaikinya tidak memerlukan perubahan besar pada kode.

Pengguna LZMA Utils harus pindah ke XZ Utils. XZ Utils mendukung .lzmaformat lama yang digunakan oleh LZMA Utils, dan juga dapat meniru alat baris perintah LZMA Utils. Ini harus membuat transisi dari LZMA Utils ke XZ Utils relatif mudah.

Faktor penentu mungkin bukan kompresi, walaupun ironisnya adalah untuk contoh ini. "alasan praktis" adalah alasan yang jelas dan signifikan untuk menggunakan XZ-Utils. Selain itu, .xzformat ini memungkinkan Anda menentukan algoritma kompresi, dan filter, sehingga .xzfile dapat menggunakan LZMA atau LZMA2. Hindari membuat .lzmafile baru , mereka dianggap sebagai format lama.

Adapun bahkan menjaga LZMA-Utils sekitar: jangan. XZ-Utils memiliki dukungan untuk .lzmafile lawas . Ini juga memiliki pembungkus untuk skrip yang masih menggunakan LZMA-Utils. Jika semua alasan itu masih kurang, Ubuntu menjatuhkan legacy lzma-utils dari repositori-nya.


1
"Penulis dari kedua Utils mengatakan secara terbuka, pengguna harus beralih ke XZ-Utils ≥ 5.00." Kutipan diperlukan. :-)
Faheem Mitha

@FaheemMitha: Karena ini adalah posting, dan bukan referensi pendidikan atau penelitian asli, kutipan hanya akan menjadi halaman proyek. Saya berasumsi karena itu dari penulis LZMA-Utils, dan ia menulis KEDUA utilitas dengan maksud xz-utils menggantikan warisan LZMA-Utils, itu terbukti dengan sendirinya. ... Tapi Bagi siapa pun yang ingin mendapatkan lebih detail, tukaani.org/lzma .
JM Becker


0

xz lebih disukai karena memiliki tingkat kompresi tertinggi. Namun, kompresnya lebih lambat, tetapi ia menebusnya dengan kompresinya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.