c# - Using multiple dynamically created databases in project -


after surfing on stackoverflow found out, there many projects uses multiple databases. in project create them dynamically. referring this answer given reason (construction erp, 1 database 1 client) important enough? can give pros , cons of project structure?

the whole application architecture depends project sale model.

if host database clients (eg. of them prefer host database in environment), recommend stay 1 database cover customers operate.

i've worked on erp system dedicated 2 clients, database hosted on our environment data separated between customers. did adding 1 additional table "customer" , every entity differs customers has foreign key table. if asked me performance, said it's not problem @ - creating proper indexes on tables, delete old unnecessary data , deployment of kind of caching server between application , database deal it. had database approx. 120gb on disk, , tables had approx 84 mln. records. (i've worked database sized 2tb on disk, sharepoint database it's little bit different story)

pros:

  • easiest database maintaining
  • possibility migrate separate database on customer's request
  • migration 1 version takes smaller time

cons:

  • while yours database size grows, your's db server must grow too
  • more complicated architecture beginners (but i'm don't know more complicated - generating every time new database new customer, or implement correct solutions architecture once)
  • if yours customer requests specific solution differs others - need setup separate environment , migrate data

and finally, according statistics - development costs lower in comparison maintaining costs, if reduce maintaining costs implementing proper architecture solution profit project greater.


Comments

Popular posts from this blog

javascript - Using jquery append to add option values into a select element not working -

Android soft keyboard reverts to default keyboard on orientation change -

jquery - javascript onscroll fade same class but with different div -