Useless fuss about ZIP and RAR

by Salvatore Iovene on 24 February 2007 — Posted in Articles

There has been some fuss generated by Jeff Atwood (who is a Windows developer, which is bad, and a Visual Basic one, which is worse), who seems, in my humble opinion, to be giving partial information around, as closed in his Windows-only world as he appears to be. In a recent article of his, Jeff makes a basic comparison between the ZIP and RAR compression systems. Unfortunately, most Windows people completely ignore that there’s something much better out there, that has been floating in the *nix world for quite a long time now. I’m talking about the powerful combination of tar and bzip2.

Let’s get to the facts right away. To experiment around, I’ve used a directory containing the source code of the Linux kernel, then I built that kernel, so that the size of the directory would be pretty big, and we would have both text files and binary files.

Here’s the size of the original directory:

$ du -sh /usr/src/linux-2.6.18.3
539M    linux-2.6.18.3

This is what happens with ZIP:

$ time zip -r ~/linux /usr/src/linux-2.6.18.3
...
real    2m35.917s
user    0m32.486s
sys     0m6.024s

$ ls -gGh ~/linux.zip
-rw-r--r-- 1 141M 2007-02-24 01:04 /home/siovene/linux.zip

Fine, 141Mb in 2 minutes and 35 seconds. Let’s try RAR:

$ time ./rar_static a ~/linux.rar /usr/src/linux-2.6.18.3
...
real    5m8.715s
user    2m14.012s
sys     0m12.473s

$ ls -gGh ~/linux.rar -lh
-rw-r--r-- 1 132M 2007-02-24 01:26 /home/siovene/linux.rar

Ouch! Double time and just a slightly better compression! Let’s try TAR and BZIP2:

$ time tar cv linux-2.6.18.3 | bzip2 > ~/linux.tar.bz2
...
real    4m22.265s
user    2m38.134s
sys     0m5.608s

$ ls -gGh ~/linux.tar.bz2
-rw-r--r-- 1 90M 2007-02-24 01:09 /home/siovene/linux.tar.bz2

Not too faster than RAR (but using two programs communicating through a pipe, so some overhead), but much more efficient! The compressed file is only 90Mb starting from an original uncompressed of 539Mb

Let’s summarize the data:


Method Time Size
zip 2m35s 141Mb
rar 5m08s 132Mb
tar.bz2 4m22s 90Mb

In conclusion, you should use the best tools, interdependently from their popularity, and remember that there is so much more than what you can see from your Windows-user-perspective.


Get new articles via email

Related posts:

9 Comments »

  1. But, does it have data recovery!?

    I only use RAR with a somewhat large recovery record (5% or so). It has allowed me to recover corrupted archives from failing hard disks, cd’s, and of course, crappy data connections.

    BTW, what size dictionary were you using with RAR? The newer windows version supports 4096, bringing compression up to where ACE used to be (it has supported 4096 since I can remember). Did you create a solid archive?

    Not a fan of your “results” since you only try compressing text files (and don’t give details on compression options). Would be nice to see some binaries, images, combination of all, etc. I found different results for large amounts of jpeg images, binaries, “program folders” (with a combination of all), etc.

    Comment by nomel — February 24, 2007 @ 2:25 am

  2. Salvatore, you are outdated. LZMA beats the crap out of anything else. A popular LZMA compression implementation is 7zip, also available for windows. But ofcourse, abstracting file metadata and compression is good so having tar.lzma is better :)

    Comment by suihkulokki — February 24, 2007 @ 8:30 am

  3. nomel: I was using default options with all the three methods.

    Comment by Salvatore Iovene — February 24, 2007 @ 12:15 pm

  4. suihkukokki: oh well, I’ll have to try that, then :)

    Comment by Salvatore Iovene — February 24, 2007 @ 12:16 pm

  5. Hi

    concerning data recovery there is always par / par2. In my opinion this is much better than built in recovery options.

    Look here for more info:
    http://parchive.sourceforge.net/

    Olaf

    Comment by Olaf — February 24, 2007 @ 7:59 pm

  6. Unfair… You should have used the “Best compression” options for the 3 of them. You would have seen that for instance ZIP and RAR have the same compression rate when you use the best scheme.

    Comment by Jack — April 10, 2007 @ 7:04 pm

  7. It’s unfair comparison.

    Comment by Andy — July 12, 2007 @ 8:59 pm

  8. I am compressing a game image at “best” compression rate using Power Archiver 10:

    original .iso is 650mb……….

    ZIP: took about 3 min and shrunk it to 400mb.

    TAR: took 7 min and didn’t make any any difference in size at all….

    7ZIP: took about 5 min and shrunk it to 370mb!

    Have not tried RAR yet.

    Comment by bob — June 16, 2008 @ 6:04 am

  9. > for bob:

    Tar is not a compression application. You will havt to use bzip2 on the tar archive at the same time or after to see the actual compressed archive. Please rerun your test and publish your results again.

    Comment by Mike Leigh — July 7, 2008 @ 4:59 pm

RSS feed for comments on this post. TrackBack URI

Leave a comment