Tôi nên sử dụng nén xz hay lzma?


29

Tôi đã tự hỏi vì trong Ubuntu 10.10 tôi có khả năng tạo cả tài liệu lưu trữ xz và lzma. Tôi có nên chuyển sang xz?

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

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


Lưu ý rằng đó cũng là một loại lưu trữ LZ mới hơn mà đã cơ bản được giới thiệu "kể từ cuộc thảo luận này" stackoverflow.com/a/49456056/32453 vì vậy đừng nhầm lẫn nó với lzmađề cập ở đây :)
rogerdpack

Câu trả lời:


12

Điểm chuẩn này cung cấp một số thông tin tốt về vấn đề này. Có vẻ như LZMA có tỷ lệ nén và hiệu suất tốt hơn một chút so với XZ nhưng XZ thường được ưa thích hơn do 'lý do thực tế' (tôi không chắc đây là những gì).

XZ là một triển khai của thuật toán lzma2 và tốt hơn trong việc nén dữ liệu 'không thể nén':

lzma2 là phương pháp nén được sử dụng bởi máy nén LZMA2 7-Zip. LZMA2 là phiên bản sửa đổi của LZMA cung cấp tỷ lệ nén tốt hơn cho dữ liệu không nén được (dữ liệu ngẫu nhiên mở rộng khoảng 0,005%, so với 1,35% với LZMA gốc) và tùy chọn có thể nén song song nhiều phần của tệp lớn, tăng tốc độ nén song song với tỷ lệ nén có thể giảm (xem LZMANumBlockThreads). Giống như LZMA, nó có thể tiêu thụ rất nhiều bộ nhớ; xem bảng trên. Nếu mức nén không được chỉ định, nó sẽ mặc định là tối đa.

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

Bạn nên sử dụng một trong hai.


Vì tò mò, bạn đã quyết định sử dụng?
dv3500ea

1
Trên thực tế sau một chút thử nghiệm, có vẻ như xz sẽ là con đường phía trước. Nó cũng tiết kiệm khá nhiều nén (10mb somtimes) trên công cụ nhị phân trên lzma.
NightwishFan

8
Đó không phải là một câu trả lời thích hợp, liên quan đến "OK sử dụng một trong hai". Ngay cả tại thời điểm ông đăng câu hỏi này, các tệp .lzma đã được biết là sẽ được thay thế hoàn toàn bởi .xz trong tương lai gần. Tác giả của LZMA-Utils đã nói công khai, họ không được chấp nhận và sử dụng xz-utils từ 5,00 trở đi. Bản phát hành LZMA-Utils cuối cùng là 2008-07-30, ngay cả ở thời điểm cũ. Vì vậy, nén khôn ngoan, những cải tiến có thể không phải là một yếu tố quyết định rất lớn. (trớ trêu thay trong trường hợp đó) Nhưng những lý do "chính trị" đáng lẽ phải là một lý do quan trọng để sử dụng XZ-Utils và tránh tạo tài liệu lưu trữ .lzma mới.
JM Becker

1
@TechZilla Bạn đã xem việc đăng bài của bạn về điều này như là một câu trả lời thay thế?
ændrük

1
Những lý do thực tế cho LZMA2 là hỗ trợ đa luồng. Hiệu suất luồng đơn và tỷ lệ nén thấp hơn một chút nhưng trên một hệ thống có nhiều lõi được sử dụng, LZMA2 sẽ nhanh hơn nhiều khi giải mã.
Jonathan Baldwin

42

Tôi không đồng ý với kết luận của @ dv3500ea, "OK bằng cách sử dụng", vì nó không phù hợp. Ngay cả vào ngày / giờ được đăng, .lzmacác tệp đã được thay thế hoàn toàn bởi .xz. Tác giả của cả hai Utils đã nói công khai , người dùng nên chuyển sang XZ-Utils ≥ 5,00. Bản phát hành LZMA-Utils cuối cùng là 2008-07-30 và đã ngừng.

LZMA Utils là phần mềm nén dữ liệu cũ với tỷ lệ nén cao. LZMA Utils không còn được phát triển, mặc dù các lỗi nghiêm trọng có thể được sửa chữa miễn là việc sửa chúng không yêu cầu thay đổi lớn đối với mã.

Người dùng của LZMA Utils nên chuyển sang XZ Utils. XZ Utils hỗ trợ .lzmađịnh dạng kế thừa được sử dụng bởi LZMA Utils và cũng có thể mô phỏng các công cụ dòng lệnh của LZMA Utils. Điều này sẽ giúp việc chuyển đổi từ LZMA Utils sang XZ Utils tương đối dễ dàng.

Yếu tố xác định có thể không được nén, mặc dù trớ trêu thay nó là ví dụ này. "Lý do thực tế" là một lý do rõ ràng và quan trọng để sử dụng XZ-Utils. Ngoài ra, .xzđịnh dạng cho phép bạn chỉ định thuật toán nén và bộ lọc, vì vậy .xzcác tệp có thể sử dụng LZMA hoặc LZMA2. Tránh tạo các .lzmatệp mới , chúng được coi là một định dạng cũ.

Còn về việc giữ LZMA-Utils: đừng. XZ-Utils có hỗ trợ cho các .lzmatập tin cũ . Nó cũng có các hàm bao cho các tập lệnh vẫn sử dụng LZMA-Utils. Nếu tất cả những lý do đó vẫn chưa đủ, Ubuntu đã bỏ lzma-utils kế thừa khỏi kho lưu trữ của nó.


1
"Tác giả của cả hai Utils đã nói công khai, người dùng nên chuyển sang XZ-Utils ≥ 5,00." Cần dẫn nguồn. :-)
Faheem Mitha

@FaheemMitha: Vì đây là một bài đăng, và không phải là tài liệu tham khảo giáo dục hoặc nghiên cứu ban đầu, nên trích dẫn sẽ chỉ là trang dự án. Tôi giả sử vì đó là từ tác giả LZMA-Utils, và anh ta đã viết BOTH bộ tiện ích với ý định xz-utils thay thế LZMA-Utils cũ, điều đó là hiển nhiên. ... Nhưng đối với bất cứ ai muốn biết thêm chi tiết, tukaani.org/lzma .
JM Becker

3

Chắc chắn bạn không nên sử dụng lzma như những người khác nói.

Antonio Diaz Diaz, tác giả của định dạng lzip, cho biết định dạng Xz không đủ để lưu trữ lâu dài . Nếu bạn muốn sao lưu các tệp quan trọng của mình, hãy xem xét các định dạng tệp khác như bzip2, có công cụ khôi phục tham nhũng.


xz được coi là không an toàn bởi một số. Điều đó không áp dụng cho lzma mặc dù.
oᴉɹǝɥɔ

0

xz được ưa thích do nó có tốc độ nén cao nhất. Tuy nhiên, nó nén chậm hơn, nhưng bù lại bằng nén.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.