As promised in my previous post on "Software Defined Storage - Why Customers Should Care", I want to follow-up with a brief overview of the competitive landscape.
Software-only Vendors with no Horse in the Hardware Race
By definition, these vendors have the highest credibility when it comes to truly abstracting storage management from the underlying hardware, as they simply do not sell hardware. Without this conflict of interest, each one of these vendors has a significant incentive to change the storage game for the benefit of the customer. This means providing as many of the features and benefits of Software Defined Storage as possible (see part 1 of this series).
Hardware Vendors Offering Software-only Storage
By definition, when a hardware vendor offers software that commoditizes its own range of traditional storage hardware, customers have to look at the fine print. However, each one of the below products deserves a close look and a comparison of features and economics.
Storage Appliance Vendors
These are really software vendors, using mostly commodity hardware, including Flash arrays, as a delivery vehicle for SDS. This is a concession to the traditional way storage is purchased and mostly offers a turnkey experience. When considering the purchase of this type of storage appliance, it is essential to make sure to avoid the creation of technology islands that require separate management tools, processes and staff.
Storage today should be decoupled from hardware. There are compelling use cases for each type of storage, may this be SAN, NAS, Flash, RAM or DAS. However, there is absolutely no reason at all to further go down the path of storage silos, where the NetApp guys, the EMC guys and the Flash guys all are separated, without much knowledge of each other or of application requirements.
Ultimately, applications will request the storage they require, by sending API calls for virtual volumes of a certain performance level, cost, size, resiliency and location. SDS will translate these API calls into a set of instructions that automatically provisions the storage that comes the closest to these application requirements.