how about normalizing the schema for start ? by the looks of it, you have huge table,with plenty of varchars, that smells like bad design of db.
-- Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance