However, in a clustered environment, session could be replicated to other nodes or stored in a persistent store. Session should not go past 4 K per user. Session is a place to keep track of the user, not a data cache.
You should use data caching and store the keys in session. Use the keys in sesison against your data cache.
Even if your app is not clusterd, it could be sometime in the future.