对于大文本文件的压缩,bz2/lzma这些怎么用?太慢了

2013-08-26 01:56:31 +08:00
 andybest
一个15G的dump log文件,压缩了半个小时后,我一看压缩文件才69m。。。立即kill换gzip压缩了。。。

大的文本文件压缩,有什么好办法没?
3446 次点击
所在节点    问与答
7 条回复
phuslu
2013-08-26 02:02:27 +08:00
snappy
felix021
2013-08-26 02:04:22 +08:00
试试lz4或者lzo,超快。

p.s. lzo是os x mavericks用来压缩内存的(减少对swap的需要)。
andybest
2013-08-26 02:33:00 +08:00
@felix021 @phuslu 非常感谢,我对比了一下:

lz4 - Extremely Fast Compression algorithm
snappy - A fast compressor/decompressor
LZO real-time data compression library

Name Ratio C.speed D.speed
MB/s MB/s
LZ4 (r101) 2.084 422 1820
LZO 2.06 2.106 414 600
QuickLZ 1.5.1b6 2.237 373 420
Snappy 1.1.0 2.091 323 1070
LZF 2.077 270 570
zlib 1.2.8 -1 2.730 65 280
LZ4 HC (r101) 2.720 25 2080
zlib 1.2.8 -6 3.099 21 300


lz4无论是在压缩比和读写速率上都完爆 snappy 与 lzo,这是不是说明lz4是最好的选择了?
felix021
2013-08-26 08:38:05 +08:00
@andybest 貌似lz4的压缩比是更小吧(我也不是非常确定)
timonwong
2013-08-26 10:21:17 +08:00
@andybest
lz4 主要靠牺牲内存换取高速,如果需要一个占用CPU、内存资源都不大的压缩算法,用lzo,否则可以考虑用lz4
batfree
2013-08-26 10:32:55 +08:00
楼主不应该Kill啊,输出结果是69M不等于压缩的慢, 这种LOG全是重复信息,15G全压缩甚至了不过几十M。 我这儿经常会出现几M的压缩包解压缩之后好几个G的。
clino
2013-08-26 10:55:37 +08:00
为什么不试试 7zip ?
要快的话可以调一下参数不要压缩得那么厉害.
7z 用来压大文件应该算是久经考验的了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/80209

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX