My checkbox is bigger than your checkbox!

This morning Josh Odgers from Nutanix published a blogpost where he rightfully pointed out that having support for a specific feature(set) doesn’t necessarily mean the same for all vendors (link). In this case we are talking about NAS-VAAI. The example given is that there are a lot of vendors that have support for NAS-VAAI but Nutanix is the only one that supports, and is certified for all primitives. Point well taken Josh and luckily there is always the HCL to check that out as you showed.

note: the same applies to VAAI for block primitives!

Of course when one rep from a vendors says A, others will say B and then we get good technology discussion on twitter. Sometimes with trolls and dragons but in the end we all learn if we are open to it. And that’s when this spark came along. 

All checkboxes are created equal but some are more equal than others.

I have seen one too many sales-reps (and customers as well) doing checkbox sales and acquisition. Do you have this feature? YES, so we must be better than all the others. WRONG! And I’ll show you with XCOPY as an example.

Screenshot 2014 11 28 09 51 02

This is a plain VM copy within the same host, to the same datastore. What happens is that the ESXI host reads every IO and then copies it back to another location. This is how we all did up till we got VAAI.

Screenshot 2014 11 28 10 01 27

In example 2 we are adding VAAI. Now the copy action is completely offloaded to the array. This will eliminate CPU and bandwidth usage on the host and the array will perform the block and it’s metadata copy in the background. Probably a lot faster than the host ever would be able to. The speed of this process will depend a lot from one vendor to another.

Screenshot 2014 11 28 10 01 37

Let’s add inline deduplication in the mix. This means that we will offload the copy action to the array and the array will only have to copy the pointers. Note: there are other smart cloning techniques that do the same but are not necessarily deduplication. These solutions will use copy-on-write or allocate-on-write rather than deduplication as such but the initial copy will have the same speed benefits.

Screenshot 2014 11 28 10 01 47

Now here comes the tricky part – there could be a possibility of having an array that does inline deduplication (or those smart-copy techniques) where VAAI is not enabled. In this case the copy job will still be done by the host but the array will only have to copy the meta-data pointers.

EXAMPLE 4 IS FASTER THAN EXAMPLE 2 AND WE ARE NOT USING VAAI!

Conclusion

This is a pure theoretical post, sparkled by a conversation on twitter. There is not a single specific technology used as an example here. The point I was trying to make here is to start looking beyond the checkbox! One checkbox may be bigger than another.

2 comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.