Everyone is talking about it, but it seems like everyone has a different definition for it. So what’s all the hype about and what really is software defined storage?
At the core I am a software person…always have been regardless of the number of hardware companies I’ve worked for. So, to me, the concept of software defined storage (SDS) is a great one. Unfortunately, as with all new terms SDS doesn’t mean much yet as everyone is using the term to describe their product. Why not jump on the bandwagon, you ask? Isn’t it easier to draft off of the marketing hype than to be a leader and break new ground? No thank you. That’s not really my style.
In my opinion, having controller software that runs on commodity hardware is not SDS. It is a good way to lower cost, but it doesn’t change anything else about the storage solution. Steve Duplessie wrote a good (and rather amusing) blog on this topic recently. In summary, he says it is all about the data. Well, the way he puts it is a bit more direct…”it’s about the data, dummy”. And while his comment is rather John Madden-esque in stating the obvious, he does bring up a fair point in that in the getting caught up in the “software-defined everything” frenzy the focus seems to have shifted away from fundamentals…that the basic, main purpose of storage is all about storing, protecting and making your data available when needed.
SDS needs a paradigm shift to be relevant. That paradigm shift not only includes the ability to use lower cost commodity components to store and protect the data, but it also requires the control of the storage to understand more about the data and provide added value. Otherwise, what is the point of separating the control plane and the data plane through abstraction or virtualization?
To deliver on this, the storage solution needs to have visibility to the application to know something about the type of data it is managing. The advantage that software brings us is the ability to adapt to individual data types and provide the performance necessary in terms of network, IOPS and throughput while storing it on the most cost effective storage to meet that particular performance profile. Ultimately, this solution delivers an end-to-end Quality of Service for a particular workload, regardless of whether it is on a physical or virtual server.
If the above was today’s definition of SDS, I would happily use the term to describe our Gridstore solution. But for now, I will stay away from SDS as the primary definition of our Grid, as the definition is still a bit all over the place. To crystallize for you what our virtual controller and grid-based storage solution does, I will, instead, opt for “Optimized Storage”. Given our patented Server-side Virtual Controller (SVC™) technology, we can automatically optimize storage for individual workloads. We manage the storage of the data based on the application and ensure that the application performance is never compromised because of the underlying storage performance or “noisy neighbors”.
Over time SDS will be better defined just as cloud turned from a nebulous concept to something most of us understand today. Until then, I’ll lead with talking about our Grid as Optimized Storage.