Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

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'm just a lowly developer so don't really have much exposure to our virtual server infrastructure, so thought I would ask a question here.

Our IT manager just told me to ignore the 'disk space free' figure of one of the drives on our Windows Server 2003 64bit based SQL Server and has stated "it is what is free across the disk arrays that server spans that is important".

From what I know the server is virtual on VMWare (ESX something i think) and we have a SAN. Why would it be setup that the disk sizes reported on a server would be different to what is actually available physically? Would this not lead to trouble?

Please enlighten me. I'm keen to understand how this would work/be setup...

share|improve this question

He is probably talking about what is referred to as thin provisioning.

Thin provisioning is a mechanism that applies to large-scale centralized computer disk storage systems, SANs, and storage virtualization systems. Thin provisioning allows space to be easily allocated to servers, on a just-enough and just-in-time basis. (Wikipedia)

In essense you make it seem like there is more space available than there is, and then provide the space just as it is actually being utilized. This allows for a much lower storage capacity overhead.

If you exceed the physically available storage, it should result in a failed write/permission denied. For an MS-SQL server, that does mean a good bit of trouble :)

share|improve this answer

Roy's comment about thin provisioning may be the right one but if so then the scenario that you experience is that the Server believes it has X amount of storage presented in a volume but in reality only some fraction of X is actually physically allocated. As the server consumes free space the SAN\Storage subsystem allocates real storage blocks. This allows the systems admins to configure systems for the total amount of capacity they will need in their expected lifetime without having to immediately provision exactly that amount of physical disks. The OS believes it has all that free space, and it will if it needs to have it but this "allocate on demand" capability enables storage administrators to cost effectively plan staged storage purchases rather than purchasing masses of storage up front that will be idle for much of its life. It also means that server admins should not have to take any services off line to extend volumes or bother with extending volumes at all over time (provided the long term planning was good in the first place).

Given the way you've phrased the question I think it's more likely that some storage on your server is mounted via NTFS Volume Mount Point(s). The concept is pretty basic for Unix folks but it is still relatively unusual in Windows environments. If there are mount points in use on a volume then the total amount of free space available will exceed the amount displayed at the root of the drive - the free space beneath each mount point depends on the storage volume that it points to and is not reflected in the meta data higher up in the drive. This is a totally transparent way of providing storage for almost all applications but if Mount Points are used then backup procedures need to avoid making simple assumptions about the amount of data in a volume based on the disk level summary data.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.