In a multi-tenant environment the application database is usually partitioned by tenants. This is done to achieve isolation and scalability. The problem of course is how do you route tenant requests to the correct databases?