Linux Storage and Filesystem Workshop, day 2
Posted Apr 10, 2009 19:04 UTC (Fri) by giraffedata
Parent article: Linux Storage and Filesystem Workshop, day 2
they will sell an array which claims to be much larger than the amount of storage actually installed.
This is a really poor description of thin provisioning. For those who didn't get it: thin provisioning means the storage server allows you to create volumes whose total size exceeds the actual storage capacity of the system. So you don't buy disk drives to back the unused portion of those volumes.
But that leads to an interesting problem if trim is used to discard the contents of some blocks in the middle of the file. If the application later writes to those blocks - which are, theoretically, still in place - the system could discover that the device is out of space and fail the request. That, in turn, could lead to chaos.
That's no more interesting than the simpler problem that when you go to extend a sequential file, the write request fails even though the filesystem has space available.
These systems work only if you can manage the system in such a way that running out of actual storage space is about as rare as a power supply failure. That means keeping a large amount of unused space at all times and monitoring consumption rates.
I think to do it right, the storage system would probably also have to slow down as it approaches full so as to protect itself from a runaway storage consumer.
to post comments)