I am designing a mobile app in which I need to host my vendor data and give access to that data after analysis to only the specified users. Since I will have multiple vendors with different set of data and users, should I have multiple database 1 of each vendor or 1 database with different schema ? I plan to run the application on Google Cloud Platform and use Google Cloud SQL.

What are advantaged and disadvantages of using single database to host multiple vendor data?


The advantage of using a single database is in having a single schema and a single codebase. If you make a change, then all vendors get the change. (That can be a disadvantage, too, if they don't like the change).

Apart from that, the disadvantage is if the vendors have significantly different requirements and need different schemas and/or they interpret the data differently. But if some of them want to have a schema or code change, then you have to manage all the different versions.

It's easy enough to serve up data for a given vendor to a given user by using the right queries. Unless you want to be spending most of your time managing versions, you probably want to keep them all synchronized with the same schema and code.

|improve this answer|||||
  • Following single database design and is working well for me for now. – Vic Jan 28 '15 at 5:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.