xz, gzip 및 bzip2 사이에서 어떤 압축 알고리즘이 가장 효율적입니까?


16

xz, gzip 및 bzip2 사이에서 상당히 큰 타르볼을 압축 할 때 가장 작은 파일 크기와 가장 빠른 속도를 제공하는 압축 알고리즘은 무엇입니까?


'가장 작은 파일 크기로 결과'에서와 같이 '최고'?
Hennes

모르겠습니다. 어쨌든 시험에 답을 추가 할 수 있도록 질문에 어쨌든 찾으려고 노력했습니다. 나는 또한이 일이 왜 닫혔는지 전혀 모른다. @Karan
Nathan2055

1
아, 왜 쉽게 닫혔습니까? "최고"는 매우 주관적이며 일반적으로 토론이나 비 건설적인 답변으로 연결됩니다. 최상의 압축은 가장 작은 파일 크기, 가장 빠른 압축, 압축에 사용되는 최소 전력 (예 : 랩톱), 압축하는 동안 시스템에 미치는 영향을 최소화 (예 : 코어 중 하나만 사용하는 고대 단일 트레드 프로그램) 또는 ... 그들 모두의.
Hennes

흥미로운 기사는 tomshardware.com/reviews/winrar-winzip-7-zip-magicrar,3436.html입니다 (Windows 기반이며 xz, gz 또는 bz가 아닌 7zip, magicRAR, WinRAR 및 WinZip에 중점을 두지 만 여전히 흥미 롭습니다) 그리고 배경 정보 제공).
Hennes

@Hennes-내가 연구하고있는 것과 정확히 일치하도록 게시물을 정리했습니다. 또한 언급 한 기사 덕분에 오늘 나중에 읽을 것입니다.
Nathan2055

답변:


15

스트레스 테스트에서 나열된 세 가지 형식을 사용하여 464MB의 데이터를 압축했습니다. Gzip은 364MB 파일을 반환했습니다. Bzip2가 315MB 파일을 반환했습니다. Xz는 254MB 파일을 반환했습니다. 또한 간단한 속도 테스트를 수행했습니다.

압축:

1 : Gzip

2 : Xz

3 : Bzip2 (이것이 진행되는 동안 팬이 상당히 불고있어 내 Athlon II가 상당히 긴장되었음을 나타냅니다)

감압 :

1 : Xz

2 : Gzip

3 : Bzip2

이 모든 테스트는 최신 버전의 7-Zip으로 수행되었습니다.

Xz는 균형 잡힌 압축에 가장 적합한 형식이며 Gzip은 속도에 매우 적합합니다. Bzip2는 압축 비율이 적당하지만 xz를 대신 사용해야합니다.


2
좋은 연구. bzip2에서 제공하는 다양한 압축 수준 옵션을 사용해 보셨습니까 bzip2 -9 <file>? 예 : ?
Aaron Miller

@AaronMiller-아니요, 7-Zip을 통해 사용할 수 있습니까?
Nathan2055

어느 정도 확실 하지는 않지만 , dotnetperls.com/7-zip-examples 섹션 "Switch m"을 참조하십시오 .
Aaron Miller

7
호기심에서 테스트 파일은 어떤 종류의 데이터입니까?
GeminiDomino

데이터 유형이 다르면 압축 된 크기도 다릅니다. 예를 보려면 여기 를 참조 하십시오 .
Ploni

4

1.1GB Linux 설치 vmdk 이미지에서 자체 벤치 마크를 수행했습니다.

rar    =260MB   comp= 85s   decomp= 5s
7z(p7z)=269MB   comp= 98s   decomp=15s
tar.xz =288MB   comp=400s   decomp=30s
tar.bz2=382MB   comp= 91s   decomp=70s
tar.gz =421MB   comp=181s   decomp= 5s

최대의 모든 압축 수준, CPU Intel I7 3740QM, 메모리 32GB 1600, RAM 디스크의 소스 및 대상

나는 일반적으로 문서와 같은 일반 파일을 보관하기 위해 rar 또는 7z를 사용합니다.
시스템 파일을 보관하려면 파일 롤러 또는 tar -z 또는 -J 옵션과 함께-. preserve와 함께 .tar.gz 또는 .tar.xz를 사용하여 tar로 기본 압축하고 권한을 보존하십시오 (또는 .tar.7z 또는 .tar.rar를 사용할 수 있습니다)

업데이트 : tar는 ACL이 아닌 일반 권한 만 보존하므로 일반 .7z와 getfacl 및 sefacl을 통해 수동으로 백업 및 복원 권한과 ACL을 사용할 수 있으므로 파일 아카이브 또는 시스템 파일 백업 모두에 가장 적합한 옵션 인 것처럼 보입니다. 권한 및 ACL 유지, 체크섬, 무결성 테스트 및 암호화 기능이 있으며 p7zip을 모든 곳에서 사용할 수 없다는 단점이 있습니다.


학생, rar의 옵션은 무엇입니까? kolivas by lrzip을 사용해보십시오 . 가상 디스크 이미지에 적합합니다.
osgx

RAR에서 Git으로 옮기고 텍스트 파일은 tarballs, 다른 것은 btrfs로 마이그레이션합니다. RAR을 사용하는 이유는 성능이 아닙니다. 복구 기록, 모든 파일에 대해 별도의 파일 수준 256 비트 체크섬과 같은 기능으로 인해 사용하고 있습니다 ...
Sudoer

3

이 기사는 매우 흥미로운 결과를 제공한다고 생각합니다.

http://pokecraft.first-world.info/wiki/Quick_Benchmark:_Gzip_vs_Bzip2_vs_LZMA_vs_XZ_vs_LZ4_vs_LZO

가장 효율적인 크기의 형식은 xz 및 lzma이며 둘 다 -e 매개 변수를 전달합니다.

가장 빠른 알고리즘은 lzop 및 lz4에 의해 gzip에서 1.3 초 내에 그리 멀지 않은 압축 수준을 생성 할 수 있지만 gzip은 8.1 초가 소요됩니다. 압축률은 lz4의 경우 2.8이고 gzip의 경우 3.7입니다.

이 기사에서 추출한 몇 가지 결과는 다음과 같습니다.

  • 지포 : 8.1s @ 3.7

  • lz4 : 2.8에서 1.3 초

  • xz : 52.2에서 32.2 초

  • xz -e : 6m40 @ 7.063

  • xz : 7.063에서 4 분 51 초

따라서 속도가 절실히 필요한 경우 lz4는 훌륭하고 여전히 2.8 압축 비율을 제공합니다.

바이트를 필사적으로 할당해야하는 경우 최대 압축 수준 (9)의 xz는 커널 소스와 같은 텍스트 파일에 가장 적합합니다. 그러나 매우 길고 많은 메모리가 필요합니다.

시간과 공간에 미치는 영향을 최소화하기 위해 필요한 곳은 gzip입니다. 이것은 프로덕션 환경을 매일 수동으로 백업하는 데 사용하는 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.