There are a number of good compression tools out there, but remember that better compression usually == more time and other computer resources (memory, CPU, etc). Also, some files, such as mp3 audio files and most video formats are already compressed, so you won't get much reduction in size. Here is an example: a 1.5GB mkv (Mastroika) video file compressed with bzip2 only resulted in a resulting file of, oh yes, 1.004x larger than the input file, and bzip2 is one of the more efficient tools out there... :-)
Now, for text files, executables, shared libraries and other standard OS files, then these tools can result in very significant reductions in size, sometimes to the 90% you are looking for, but again, it all depends upon the original file format.
FWIW, I use gzip when I make a bit image backup of my system drive. It is almost as good as bzip2 (a little less compressed), but it is much more efficient in terms of time to compress the output. So, my 320GB system drive will compress to 10% or less of the drive size so I can easily store multiple copies on my external Sata-II backup drive (2TB).