Jump to content

Archived

This topic is now archived and is closed to further replies.

mattcass

When to use multiple databases?

Recommended Posts

New to the group and I can't find any posts on [b]when it would be good design to use multiple databases[/b].

I am building a website that will allow access for 3 different types of users:  owners, admins, and users.  Each of these user types will have their own unique tables and fields.  I expect there to be over 10,000 users for each type.

Now, I realize that I can just use one database and create a bunch of tables in it, each specific for my 3 user types.  And this would be easier for me to program. Conceptually, however, it seems to make better sense to use a different database for each user type.

I would like to know if it is better/faster/more resource efficient/etc to use one large database with many tables, or to break it down into 3 databases, one for each user type.

Thanks for reading this and your input!
Matt

Share this post


Link to post
Share on other sites
Now someone may prove me wrong on this, but I don't think 1 application needs more than 1 database. As far as I'm concerned, the database as grouping of tables, serves no other purpose than to group permissions.

Meaning: I'm some ISP, I have a RDMS server, different clients use that server. Different clients logon to that server, and have access to different groups of tables, eg databases.

Share this post


Link to post
Share on other sites
Databases are specific to each application. RDMBS' are supposed to represent the design of your application, they are Relational after all.

The only system design I can think of that should allow multiple DB's is a DB manager like phpMyAdmin.

Share this post


Link to post
Share on other sites
It depends on how the system is intended to be used.  In regards to the OP, I imagine that admins will want access to user data.  Separating that data into another database only serves to make accessing that data slightly more difficult.  Most of the time, a separate database will likely not help much.

In the case of my current project at work, we have multiple clients using the same system.  So we've assigned a separate database to each client.

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.