Forgive me if this has been mentioned, but did you set migrate=False for the tables? It sounds like we've had this conversation before, so I'm just making sure. I hadn't thought about caching an application's table definitions. I wonder if that's something Massimo has considered before?
As for caching the data itself, I have made extensive use of cache.ram in my applications to improve speeds of code execution. Whenever I need to cache something for a user (like a generated navigation menu), I store the result in the session (i.e. session.menu = ...). For everything else, there's cache.ram or even using memcached.

