During the last VMworld Europe I had the chance to sit down with Suresh Vasudevan, President and CEO of Nimble Storage, one of the hottest Silicon Valley storage startups, to talk about their product in good detail.
Nimble was founded in early 2008 when they started working on their product, in late 2010 (September) they officially launched the CS-Series product line, both founders and the current CEO have a high profile pedigree from NetApp and Datadomain.
The widespread availability of flash drives catalyzed their interest in founding a new startup, while everybody else was focused on solving the high end performance problems using SSDs as “super disks” they decided instead to approach the mainstream market adopting flash as a core part of their storage and data layout, employing it as a structural pillar of their array, not just as an expensive add-on for extra performances.
Starting their life as a new company, without any legacy burden, they were able to create an innovative, brand new, data layout, this is what happened before with 3Par (think chunklets), Compellent (with their page-based architecture) and many other startups of the early 00’s, Nimble invented a new data layout placing flash at the core of their system and this is no minor detail as almost everything in a storage subsystem lives on it: snapshots, replication features, deduplication are features that are strictly dependent on how the data is written on the backend storage, and it’s something that is likely not going to change in the future as it could break all the value-add software that the storage vendor has built over the years.
The Secret Sauce
Flash is not the only secret sauce stuffed inside the Nimble CS-Series, their Datadomain heritage brought several interesting compression and deduplication techniques, while their NetApp legacy brought the inspiration for log structured filesystem and I/O serialization giving birth to their data layout model called CASL: Cache Accelerated Sequential Layout.
They capture data as it comes in using variable block sizes and then compress them inline (they claim 2:1 compression) and store the blocks on the underlying storage aligning them to the application needs using profiles attached to the volume/LUN itself (for example storing them in 8k blocks if you’re using SQL in that volume).
Flash is also leveraged to perform an extremely efficient garbage collection to avoid the fragmentation that affects other systems at high utilization rate, being created with Flash in mind they can also introduce SSD-optimizing tricks like aligning to SSD erase block size thus minimizing write amplification and enhancing speed, squeezing out every I/O from the MLC drives they use.
Their advanced deduplication and compression algorithms are instrumental to the array’s success, they claim that customers can consolidate primary and backup storage in a single system due to their highly efficient data footprint reduction techniques that enable customers to keep 60 to 90 days worth of snapshots online (snapshots are redirect-on-write), and to replicate them to a separate Nimble array without rehydrating the data.
Nimble offering is iSCSI only at this time, with no plans for FC in sight and, mind you, I don’t consider that a downside, my personal opinion is that iSCSI on DCB (which is currently not supported by Nimble) is going to help the protocol in the latency-sensitive applications, and given their focus on mainstream applications iSCSI is definitely a good choice, for both existing environment willing to change and for greenfield deployments.
The company is considered one of the fastest growing storage startups, they’re following the footsteps of other successful storage startups like Equallogic, Lefthand and Compellent, and claiming that both $/IOPS and $/GB are 1.5x / 2x less than the competition is helping them cutting through deals rapidly.
Definitely a company to look for if you’re evaluating a new storage purchase, especially for VDI deployments that generally play well with large cache systems.