Software-defined storage
Software-defined storage (SDS) is a new term (neologism) for computer data storage software to manage policy-based provisioning and management of data storage independent of the underlying hardware. Software-defined storage definitions typically include a form of storage virtualization to separate the storage hardware from the software that manages the storage infrastructure. The software enabling a software-defined storage environment may also provide policy management for feature options such as deduplication, replication, thin provisioning, snapshots and backup.
By consensus and early advocacy,[1] SDS software is separate from the hardware it is managing. That hardware may or may not also have abstraction, pooling, or automation software embedded. This philosophical span has made software-defined storage difficult to categorize. When implemented as software only in conjunction with commodity servers with internal disks, it may suggest software such as a virtual or global file system. If it is software layered over sophisticated large storage arrays, it suggests software such as storage virtualization or storage resource management, categories of products that address separate and different problems. If the policy and management functions within the software-defined storage solution also include a form of artificial intelligence to automate protection and recovery functions, it can be considered as intelligent abstraction.[2] Software-defined storage may be implemented via appliances over a traditional Storage Area Network (SAN), or implemented as part of a scale-out Network-Attached Storage (NAS) solution, or as the basis of an Object-based storage solution. In March 2014 SNIA began a Draft Technical Work available for public review on Software-Defined Storage.[3]
Based on similar concepts as software-defined networking (SDN),[4] interest in SDS rose after VMware acquired Nicira for over a billion dollars in 2012.
VMware used the marketing term "software-defined data center" (SDDC) for a broader concept wherein all the virtualized storage, server, networking and security resources required by an application can be defined by software and provisioned automatically.[5][6] Other smaller companies then adopted the term "software-defined storage", such as now defunct Coraid.
Data storage vendors used various definitions for software-defined storage depending on their product-line. Storage Networking Industry Association (SNIA), a standards group, attempted a multi-vendor, negotiated definition with examples.[7]
Characteristics
Characteristics of software-defined storage may include the following features:[8]
- Abstraction of logical storage services and capabilities from the underlying physical storage systems, and in some cases pooling across multiple different implementations. Since data movement is relatively expensive and slow compared to computation and services (the "data gravity" problem in infonomics), pooling approaches sometimes suggest leaving it in place and creating a mapping layer to it that spans arrays. Examples include:
- Storage virtualization, the generalized category of approaches and historic products. External-controller based arrays include storage virtualization to manage usage and access across the drives within their own pools. Other products exist independently to manage across arrays and/or server DAS storage.
- Virtual volumes (vVols), a proposal from VMware for a more transparent mapping between large volumes and the VM disk images within them, to allow better performance and data management optimizations. This does not reflect a new capability for virtual infrastructure administrators (who can already use, for example, NFS) but it does offer arrays using iSCSI or Fibre Channel a path to higher admin leverage for cross-array management apps written to the virtual infrastructure.
- Parallel NFS (pNFS), a specific implementation which evolved within the NFS community but has expanded to many implementations.
- OpenStack and its Swift and Cinder APIs for storage interaction, which have been applied to open-source projects as well as to vendor products.
- Automation with policy-driven storage provisioning with service-level agreements replacing technology details. This requires management interfaces that span traditional storage-array products, as a particular definition of separating "control plane" from "data plane", in the spirit of OpenFlow. Prior industry standardization efforts included the Storage Management Initiative – Specification (SMI-S) which began in 2000.
- Commodity hardware with storage logic abstracted into a software layer. This is also described as a clustered file system for converged storage.
See also
References
- ↑ Margaret Rouse. "Definition: software-defined storage". SearchSDN. Tech Target. Retrieved November 7, 2013.
- ↑ Chris Poelker (March 12, 2014). "The foundation of clouds: Intelligent abstraction".
- ↑ SNIA (March 2014). "Technical Whitepaper:Software Defined Storage" (PDF).
- ↑ Margaret Rouse. "Definition: software-defined storage". SearchSDN. Tech Target. Retrieved November 7, 2013.
- ↑ Archana Venkatraman. "Software-defined datacentres demystified". Computer Weekly. TechTarget. Retrieved November 7, 2013.
The term software-defined datacentre (SDDC) rose to prominence this year during annual virtualisation conference VMworld 2012 [...] A software-defined datacentre is an IT facility where the elements of the infrastructure - networking, storage, CPU and security - are virtualised and delivered as a service. The provisioning and operation of the entire infrastructure is entirely automated by software.
- ↑ "The Software-Defined Data Center". company web site. VMware. Retrieved November 7, 2013.
- ↑ http://www.snia.org/sds
- ↑ Simon Robinson (March 12, 2013). "Software-defined storage: The reality beneath the hype". Computer Weekly. Retrieved November 7, 2013.