Details
-
New Feature
-
Resolution: Done
-
Major - P3
-
None
-
None
-
None
-
any
-
Storage Execution
-
Fully Compatible
Description
Currently, we have one set of files for a database.
Doing a database repair on 1 TB of data can take a long time, as well as double diskspace required.
Operations on one table should not affect the other in a database.
Locking a small table up because a big table needs repaired hurts.
Also, there may be times where a big table becomes emptied and you would like to reclaim the space of TableA without locking TableB.
Corrupted data might only affect one table, and repairing one table should not affect other tables ideally.
So, a little history. For MySQL, one-file-per-table was resisted a lot until it finally got pushed in, and it made a BIG difference. You could reclaim diskspace for a specific table without having to reload your entire database to free up the diskspace. one-file-per-table as a huge benefit to operations.
Something like this for Mongo would be great.
The other solution is to do one table per database, but practically that just isn't going to happen and programmers don't think like that.