Related data should live in the same database for performance and administrative ease. If you're writing one app that's for time scheduling, and another for swapping mp3s, there's no reason for those two to be in the same database. If you're writing a calendar and a conference room scheduler, they should probably go into the same database, since they'll like have to interoperate.