Multi-tenancy - single database vs multiple database

Posted by RichardW1001 on Programmers See other posts from Programmers or by RichardW1001
Published on 2012-03-23T21:07:24Z Indexed on 2012/03/23 23:39 UTC
Read the original article Hit count: 1060

We have a number of clients, whose systems share some functionality, but also have quite a degree of diversity. The number of clients is growing - always a healthy thing! - and the diversity between their businesses is also increasing.

At present there is a single ASP.Net (Web Forms) Web Site (as opposed to web project), which has sub-folders for each tenant, with that tenant's non-standard pages. There is a separate model project, which deals with database access and business logic.

Which is preferable - and most importantly, why - between having (a) 1 database per client, with only the features associated with that client; or (b) a single database shared by all clients, where only a subset of tables are used by any one client.

The main concerns within the business are over:

  • maintenance of multiple assets - backups, version control and the like
  • promoting re-use as much as possible

How would you ensure these concerns are addressed, which solution is preferable, and why? (I have been also compiling responses to similar questions)

© Programmers or respective owner

Related posts about database-design

Related posts about projects-and-solutions