ข้อดีและข้อเสียของ bzip กับ gzip?


122

ฉันรู้จัก gzip มาหลายปีแล้วเมื่อเร็ว ๆ นี้ฉันเห็นว่ามีการใช้ bzip ในที่ทำงาน โดยพื้นฐานแล้วพวกเขามีความเสมอภาคหรือมีข้อดีข้อเสียที่สำคัญกับอีกข้อหนึ่ง?


2
ในขณะที่นี่เป็นคำถามเก่าที่มีคำตอบที่ถูกต้องและถูกต้องฉันอยากจะชี้ให้ผู้คนเห็นผลลัพธ์ของ google นี้: tukaani.org/lzma/benchmarks.htmlเพราะมันทำให้มันพังลง
Angry 84

ไม่ใช่ bzip สำหรับการบีบอัดและ gzip สำหรับการเก็บถาวร?
juniorRubyist

@juniorRubyist แหล่งที่มา?
ripper234

ฉันเพิ่งได้ยินสิ่งนั้น ฉันลืมที่
juniorRubyist

ไม่เอ่ยถึงการเข้าถึงแบบสุ่ม? stackoverflow.com/questions/14225751/…
neverMind9

คำตอบ:


147

Gzip และ bzip2 เทียบเท่ากับหน้าที่ (มีครั้งหนึ่งเคยเป็น bzip แต่ดูเหมือนว่าจะหายไปจากโลกอย่างสมบูรณ์) รูปแบบการบีบอัดทั่วไปอื่น ๆ คือ zip, rar และ 7z; ทั้งสามนี้ทำทั้งการบีบอัดและการเก็บถาวร (การบรรจุไฟล์หลายไฟล์ไว้ในที่เดียว) นี่คือการให้คะแนนทั่วไปในแง่ของความเร็วความพร้อมใช้งานและอัตราส่วนการบีบอัดทั่วไป (โปรดทราบว่าการให้คะแนนเหล่านี้ค่อนข้างเป็นอัตวิสัยอย่านำมาเป็นข่าวประเสริฐ):

decompression speed (fast > slow): gzip, zip > 7z > rar > bzip2
compression speed (fast > slow): gzip, zip > bzip2 > 7z > rar
compression ratio (better > worse): 7z > rar, bzip2 > gzip > zip
availability (unix): gzip > bzip2 > zip > 7z > rar
availability (windows): zip > rar > 7z > gzip, bzip2

อย่างที่คุณเห็นไม่มีผู้ชนะที่ชัดเจน หากคุณต้องการพึ่งพาโปรแกรมที่น่าจะติดตั้งแล้วให้ใช้ zip บน Windows (หรือถ้าเป็นไปได้เก็บถาวรแบบขยายไฟล์เองเนื่องจาก Windows ไม่ได้จัดส่งมาพร้อมกับโปรแกรมเหล่านี้) และ gzip บนยูนิกซ์ ถ้าคุณต้องการบีบอัดสูงสุดใช้ 7z

Rar ยังมีข้อเสียที่เท่าที่ฉันรู้ไม่มีซอฟต์แวร์ฟรีที่สร้างคลังเก็บ rar หรือที่สามารถแยกคลังเก็บ rar ทั้งหมด รูปแบบอื่น ๆ มีการใช้งานฟรีและไม่มีการเรียกร้องสิทธิบัตร (ร้ายแรง)


2
เท่าที่ฉันสามารถบอกได้ว่า Windows ทุกรุ่นตั้งแต่ XP สามารถเปิดไฟล์ zip โดยใช้ไฟล์ explorern
Lie Ryan

22
@ new123456 บน OpenBSD gzip อยู่ในระบบพื้นฐาน แต่ต้องติดตั้ง bzip2 จากแพ็คเกจ เราเตอร์ * WRT จำนวนมากรวม gzip แต่ไม่รวม bzip2
Gilles

2
@Gilles ฉันสามารถยืนยันได้ว่าการวางจำหน่าย DD-WRT ของฉัน: 08/12/10 (การแก้ไข SVN: 14929) ไม่มี bzip2 แต่มี gzip
Urda

11
@mlainz การวิจัยต้นฉบับ นี่ไม่ใช่ Wikipedia
Gilles

3
ดูเหมือนว่าจะหายไปอย่างสมบูรณ์ - หายไปธรรมดาธรรมดาbzipเพราะใช้การเข้ารหัสอัลกอริทึมที่จดสิทธิบัตร เนื่องจากสิทธิบัตรจึงได้รับการออกแบบใหม่ให้ใช้การเข้ารหัส Huffman แทน ในระหว่างการออกแบบใหม่นี้ได้มีการเพิ่มคุณสมบัติและการปรับปรุงใหม่ สิ่งพื้นฐานที่ทำให้อัลกอริทึมการบีบอัดที่เป็นเอกลักษณ์แม้ว่า Burrows – Wheeler transform ยังคงเหมือนเดิมทั้งสองเวอร์ชัน
ป่า

24

เท่าที่ฉันสามารถบอกได้ gzip นั้นจะทำงานได้เร็วขึ้นในขณะที่ bzip โดยรวมจะให้การบีบอัดที่ดีกว่า (เล็กกว่า)


ดูเหมือนว่า gzip จะได้รับการสนับสนุนที่ดีขึ้นเล็กน้อยโดยเฉพาะใน Windows ..
Dentrasi

5
@Dentrasi: winrar / 7zip สนับสนุนทั้งสองปัญหาคืออะไร?
whitequark

@whitequark: การสนับสนุนอย่างกว้างขวางส่วนใหญ่มีความสำคัญสำหรับยูนิกซ์เนื่องจากผู้ใช้อาจไม่สามารถเข้าถึงรูทและต้องทำงานกับสิ่งที่ติดตั้งไว้แล้ว ยังใช้กับสภาพแวดล้อม Windows ที่ผู้ใช้ไม่มีสิทธิ์การเข้าถึงของผู้ดูแลระบบ (โรงเรียน / ห้องสมุด / ฯลฯ )
Matthew

4
@Matthew คุณไม่จำเป็นต้องมีสิทธิ์ของผู้ดูแลระบบในการใช้ซอฟต์แวร์ฟรีที่พอร์ตแล้วจำนวนมากรวมถึง 7zip
whitequark

1
@IQAndreas: มาตรฐานบางอย่าง: 1 , 2 , 3
Lie Ryan

5

อัลกอริทึมมีเวลาหน่วยความจำการแลกเปลี่ยนพื้นที่ที่แตกต่างกัน โปรดจำไว้ว่าอัลกอริธึมเหล่านี้เขียนมาแล้วสักครู่และสมาร์ทโฟนของคุณมีซีพียูมากกว่าเดสก์ท็อปในสมัยนั้นหลายเท่า

สิ่งที่คุณเลือกอยู่ระหว่างสากล (.gz) และการบีบอัดอีกเล็กน้อย (.bz2) มีเพียงคุณเท่านั้นที่พูดได้ว่าคุณใส่ใจอะไรมากกว่านี้

ข้อดีอย่างหนึ่งของ. gz คือมันสามารถบีบอัดสตรีมซึ่งเป็นลำดับที่คุณไม่สามารถมองข้ามได้ ทำให้เป็นคอมเพรสเซอร์อย่างเป็นทางการของ http สตรีม ฉันจำเป็นต้องใช้ gzip หนึ่งครั้งเนื่องจากสิ่งนั้น แต่ไม่น่าที่คุณจะต้องคิดถึงมัน


4

นี่คือรายการของไซต์ที่ทดสอบอัลกอริทึมการบีบอัดเพื่อค้นหาเพียง bzip และ gzip คุณจะต้องทำการขุดบางส่วน แต่ไซต์ส่วนใหญ่จะแสดงรายการลักษณะของอัลกอริทึม วิธีนี้คุณสามารถเปรียบเทียบสิ่งที่สำคัญกับคุณขนาด (อัตราส่วนการบีบอัด) เวลาหน่วยความจำซีพียู
http://www.maximumcompression.com/benchmarks/benchmarks.php


1

จากประสบการณ์ของฉัน bzip ให้อัตราส่วนการบีบอัดที่ดีกว่า gzip อย่างต่อเนื่อง บวกกับ 7zip ในฐานะผู้จัดการและอัลกอริทึม bzip, 7zip สามารถใช้ประโยชน์จากตัวประมวลผลแบบมัลติคอร์


1

ต่อhttp://tukaani.org/lzma/benchmarks.html gzip บีบอัดสองครั้งเร็วเท่า bzip2 และคลายการบีบอัดสิบเท่าเร็ว

เช่นสำหรับใช้กับการแคช s3 บนเทรวิสและอื่น ๆ ที่คุณต้องการความเร็วในการบีบอัด / คลายการบีบอัดไม่ใช่เพียงแค่ขนาดเล็ก gzip อาจเป็นการแลกเปลี่ยนที่ดี

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.