Do not compress or otherwise encode text before putting it in the database unless you are 110% positive that you will never need to perform anything other than simple storage and retrieval on it. If you think you might ever need to issue a SELECT based on something contained in that text you're going to be completely hosed.
That said, if you plan on storing large amounts of data in a DB table many DBMSes have transparent compression built in. Eg: MySQL's InnoDB compression
Lastly, the difference between compress and deflate is negligible IMO. Just remember to never set the compression level to 9 unless you want your CPU to burst into flames for no raisin.