Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I hear a lot about things that, it is a lot cheaper to buy new harddisk than pay staff to come up with genius ideas how to save resources. But what I don't understand, is how these databases handle a situation when I need to allocate a new harddisk. Should I design this in the application layer or leave these things entire to the database. And is it even possible to have multiple database files for one table on multiple drives and have them connected somehow?


migration rejected from Oct 8 '13 at 22:47

This question came from our site for professional and enthusiast programmers. Votes, comments, and answers are locked due to the question being closed here, but it may be eligible for editing and reopening on the site where it originated.

closed as too broad by a_horse_with_no_name, Mark Storey-Smith, RolandoMySQLDBA, Phil, Max Vernon Oct 8 '13 at 22:47

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

Not really a question for SO, unless you have code to handle the problem. You'll get better help on Database Administrators – Mike W Oct 8 '13 at 8:00
What do you mean "how databases handle situation when I need to allocate..."? This is up to you and depending on your RDMS you will have different choices. For example, yes you can have multiple files from the same database (even the same table) spread accross different physical file locations; in SQL Server you can specify to which file group an index is going to be saved to.… – DrCopyPaste Oct 8 '13 at 8:20
If they support with some tools, commands, options or whatever the ability to have a single database table be made out of 2 files on separate disks, because they would not fit on the same physical disk, because the table has too many data – Martin Kosicky Oct 8 '13 at 8:47
You can either "hide" the harddisks behind an RAID array (that way it looks like one harddisk to the DBMS) or use e.g. tablespaces to distribute tables across different filesystems. This all depends highly on the DBMS, the operating system, the file system and the hardware being used. – a_horse_with_no_name Oct 8 '13 at 10:08

Leave these things entirely to the DBMS.

Most if not all DBMSes these days come with, or can be configured to work with monitoring software such that the DBA can be paged at 3AM should diskspace become a problem.

Of course, most DBAs would be rather more pro-active in monitoring something as basic as storage requirements to avoid being woken at such a time.

In general, when using a DBMS, you want to leave the headaches of monitoring and error conditions to the DMBS and its monitoring software. But be sure to talk with your devops team if you're building an enterprise class mission critical app.