If you compress normal text than a compression ratio of saving 20-80% is normal.
The gain depends of course a lot of the type of text and the size of your block.
I can assure you that you will be able to increase the throughput by this.
I take any bet that decompressing of text will by much faster than loading uncompressed ones.
As mentioned decompressing is very simple and will be as fast as doing a collation on the text.
You can easely decompress hunderts of megabyte per second.
I would say that 1 GB per second is possible with a single core.
The compresion needs no dictionatry but optionally using one can improve the compression
for small strings. I assume you will have no problem to write the routines for this.
But if you want I can do it for you.
Just drop me an email or give me a call:
My contact details are on my homepage
http://www.greyhound-data.com/gunnar
Cheers
Gunnar