contents
- Linuxで圧縮率検証
- gzipの圧縮率
- zipの圧縮率
- bzip2の圧縮率
- 圧縮率まとめ ⇦今ここ
gzip、zip、bzip2コマンドでの圧縮率、リソースの消費量、圧縮にかかる時間を計測してきましたが、いかがでしょうか?
ここからは、各コマンドの圧縮レベルから圧縮サイズ、圧縮率、時間、CPU使用率毎でまとめました。
まずは圧縮サイズからです。
圧縮レベル | gzip | zip | bzip2 |
---|---|---|---|
1 | 126038484 | 126038632 | 90692210 |
2 | 118905404 | 118905552 | 49841245 |
3 | 113818251 | 113818399 | 36671367 |
4 | 23586514 | 23586662 | 27467839 |
5 | 17763198 | 17763346 | 23749568 |
6 | 10029486 | 10029634 | 19887689 |
7 | 9967614 | 9967762 | 18052744 |
8 | 9571860 | 9572008 | 15120684 |
9 | 9571860 | 9572008 | 14208822 |
次は圧縮率です。
圧縮レベル | gzip | zip | bzip2 |
---|---|---|---|
1 | 91.0% | 91.0% | 93.5% |
2 | 91.5% | 91.5% | 96.4% |
3 | 91.9% | 91.8% | 97.4% |
4 | 98.3% | 98.3% | 98.0% |
5 | 98.7% | 98.7% | 98.3% |
6 | 99.3% | 99.3% | 98.6% |
7 | 99.3% | 99.3% | 98.7% |
8 | 99.3% | 99.3% | 98.9% |
9 | 99.3% | 99.3% | 99.0% |
かかった時間です。
圧縮レベル | gzip | zip | bzip2 |
---|---|---|---|
1 | 18s | 18s | 161s |
2 | 15s | 20s | 189s |
3 | 15s | 18s | 229s |
4 | 10s | 10s | 381s |
5 | 11s | 10s | 534s |
6 | 11s | 11s | 529s |
7 | 12s | 10s | 534s |
8 | 11s | 11s | 539s |
9 | 11s | 10s | 546s |
1CPUを占有していたからかもしれませんが、圧縮レベル4以降では、かなりの時間がかかっています。
これだけの時間がかかってしまうと実用的には不向きですね。
CPUの使用率です。
圧縮レベル | gzip | zip | bzip2 |
---|---|---|---|
1 | 30.3% | 27.6% | 50.6% |
2 | 34.4% | 25.6% | 50.7% |
3 | 35.8% | 28.9% | 51.2% |
4 | 40.8% | 40.8% | 50.0% |
5 | 40.5% | 39.9% | 50.3% |
6 | 40.4% | 43.2% | 51.0% |
7 | 39.1% | 39.8% | 51.8% |
8 | 43.6% | 44.8% | 51.3% |
9 | 40.8% | 40.6% | 51.2% |
こちらは圧縮レベル4以降からは、使用率に変化があまりない状態です。
bzip2は2CPU中1CPUのリソースを全て使い切っているため、50%前後を推移しています。
いかがでしたでしょうか?
今までの結果から、圧縮するコマンドでオススメなのは、gzip、zipかなと思います。
bzip2は時間やリソースの関係からあまりオススメできないなと思います。
SOOOTAがよく使うのは、gzipです。tarと組み合わせて使えば、ディレクトリ毎の圧縮もできますし、何より昔から使っているので、馴染みがあります。
圧縮したり解凍する時に非常に大事なのは、サーバのリソース消費量をよく考えて使うことが大事です。
リソースを大きく消費することで、サーバ側の速度低下の原因にもなります。使うときはdstatなどでリソースを監視するなど、負荷に十分に気をつけて行いましょう!
新着情報
ブログランキングに参加しています。クリックして応援していただけると嬉しいです。
人気ブログランキング
にほんブログ村