Whats the best practice when using Amazon Redshift as a cache
I would not recommend using redshift as a cache. Have you considered Redis?

Redshift saves all data to disk in 1MB blocks, in an order established by your sortkey, and distributed between nodes based on your distkey. When ever you create, update, delete you are appending data to the last blocks of the database. These blocks that hold all the new changes are not sorted until you vaccume the database.

Hence, when you use redshift as a cache you are very quickly fragmenting your data, making your queries slow.