VMDK file types
ESX server stores virtual disk as a file or set of files creating so called datastore a scalable and manageble disk space where all VMs are stored. All VM data is stored at vmdk files and there are four types of them, all with it's own features or drawbacks, let's take a closer look
Monolithic sparse disk – the only type of a virtual disk, also known as “one piece growable”, that doesn't use a separate description.vmdk file, which points to the large data file and describes the size and geometry of it. Monolithic sparse incorporates both files in one. Description in the form of plain text is enclosed in the large binary data file. Such disks grow up to the nominal size (max. 2TB) when data is added or changes are made. When you use the disk for long, its performance reduces. As far as monolithic sparse disks use extra tools to read additional layer they are more fragile than flat.vmdks.
Monolithic flat disk – a virtual machine disk type, that in contrast to a sparse disk, is fully allocated, including the start and end markers allocation and all index nodes in between these points. The creation of this disk type is more time consuming, but it is worth waiting due to its further faster performance when compared to sparse discs. It necessarily has a pointing descriptor file that is usually very small, unlike a flat.vmdk, which reaches 2TB size. Monolithic flat's performance doesn't reduce over time. These disks are safe, don't need consistent monitoring and special maintenance.
TwoGbMaxExtentSparse – is a growing virtual machine disk split into 2GB blocks. More often such disks are used when the file system can't cope with large files. So, if information occupies 8GB it will be represented with four 2GB chunks, having file-s001.vmdk, file-s002.vmdk file names, growing numerically. Description is a separate small file with usual .vmdk extension. So, it is relatively safe but not fast disk format. It is really convenient when virtual disks need to be burnt to DVD for easy carriage. Or needs to be installed on some FAT disk(sic!).
delta.vmdk – this type of virtual disk files is used when a snapshot is created. In this case the original -flat.vmdk starts working in read-only mode and all the changes are written to the -delta.vmdk file. This file is only 16 MB in size when created and can grow in 16 MB portions, if changes made to a VM disk, exceed its original default size. But being, in essence, a copy of changes that VM disk was exposed to, -delta.vmdk can't be bigger than authentic -flat.vmdk file. The system creates delta file for every snapshot and assigns a corresponding numeric name to it: xxx – 000001-delta.vmdk for the first snapshot, xxx – 000002-delta.vmdk for the next one, etc. if a snapshot is deleted, a corresponding delta.vmdk file is automatically erased and its data is previously consolidated with the original flat.vmdk. These are probably the hardest case in data recovery, especially when original flat.vmdk is damaged or absent.
Naturally you will choose the disk type that suits your needs best, however if you ask me first two Monolithic sparse disk and Monolithic flat disk are easiest to recover, yet robust and fast.