jwwceo Posted May 21, 2013 Share Posted May 21, 2013 Hello All! I am developing an app for a customer that is quite a bit more complex than anything I've made before. Basically, I am creating a cloud based software app that will have businesses paying a monthly fee to gain access. Each user will have their own set of data and the data set could get large as time goes by. My question is: Do most applications like this create a new database for each user, or do users share tables within the same database. I can see advantages and disadvantages of each. I want the application to be fast, and be scalable so as users grow we can seamlessly add resources to keep the service snappy. Best, James Quote Link to comment Share on other sites More sharing options...
Psycho Posted May 21, 2013 Share Posted May 21, 2013 Definitely start with one database. Only once you've built the application and have done some load testing will you know if the database is going to be a bottleneck or not. You do not want to set up each customer on separate databases. That would create a nightmare of managing any updates. But, if you do determine that the database will be a bottleneck, you would probably want to set it up so you can have multiple databases that each host many accounts.You would just need to implement a catalog/data abstraction layer that uses the account to determine which database to use. My company has an application used by hundreds of organizations world-wide and we've just started to implement such a solution. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.