Session vs Db?

This is basically a performance doubt! I am sure if this forum is meant for such questions!!

I have created multiple db connections (actually, two connections) for MySql in the way described in the wiki for creating multiple connections. The first database contains details specific to the user and the second is a common database for all users.

When the user selects some details from a drop-down list, the options from the common database are shown in another drop-down list (based on the user’s choice from the first list). This second drop-down list appears in multiple views. Should i store the details for the 2nd drop-down list in the user’s session component or should i load it from db everytime? Or should i store it in some cache?

By storing data in memory you "spend" the memory… and on heavy loaded websites this has to be considered…

If the database is on the same server where the application is run… then another select can be really fast… another thing is if the database is on a second server… in these case the select can be slower…

So in the end… the answer depends on many factors… and you need to see the bigger picture from your application memory requirements to file server and database configuration…

At the moment, the db is in the same server as the application…

In this case, will the db fetching be faster than that of session i.e., file storage?

And in what way should i develop for a future case, in which the db and application could be in different servers?