Yes it's all about layers of abstraction and how they map onto each other.
VMFS records all writes from specific VM's as used space within it's file system, since it isn't doing zero detect this is correct from VMFS's view point. But ultimately these are then passed through to the array which examines the data stream and will discard 16KB contiguous pages of zeroes, only writing the remainder to the 3PAR disks.
As a very simple example suppose you have two 50GB VM's, these would consume 100GB's in VMFS but depending on the number of 16KB pages of zero's they write may only consume 60-70GB's on the 3PAR.
There are different ways you can deploy such as thick on thin / thin on thin etc depending on how you want to account for the saving (I'm not a VMware expert), but the array will always avoid writing these pages to the backend disk.
Hope this makes sense.
|