xz, gzip 및 bzip2 사이에서 상당히 큰 타르볼을 압축 할 때 가장 작은 파일 크기와 가장 빠른 속도를 제공하는 압축 알고리즘은 무엇입니까?
xz, gzip 및 bzip2 사이에서 상당히 큰 타르볼을 압축 할 때 가장 작은 파일 크기와 가장 빠른 속도를 제공하는 압축 알고리즘은 무엇입니까?
답변:
스트레스 테스트에서 나열된 세 가지 형식을 사용하여 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를 대신 사용해야합니다.
bzip2 -9 <file>
? 예 : ?
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을 모든 곳에서 사용할 수 없다는 단점이 있습니다.
이 기사는 매우 흥미로운 결과를 제공한다고 생각합니다.
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
따라서 속도가 절실히 필요한 경우 lz4는 훌륭하고 여전히 2.8 압축 비율을 제공합니다.
바이트를 필사적으로 할당해야하는 경우 최대 압축 수준 (9)의 xz는 커널 소스와 같은 텍스트 파일에 가장 적합합니다. 그러나 매우 길고 많은 메모리가 필요합니다.
시간과 공간에 미치는 영향을 최소화하기 위해 필요한 곳은 gzip입니다. 이것은 프로덕션 환경을 매일 수동으로 백업하는 데 사용하는 것입니다.