Software-based Storage describes a method of separating physical storage hardware from the storage management and virtualization logics. This approach has the goal to be able to change physical storage hardware without disrupting application access and to give users the flexibility in terms of hardware choice to build datacenter storage services with lower costs. Software-based storage is originated in host based storage virtualization solutions and logical volume managers introduced in the late 80s. Today this term is also used to describe scale-out storage software solutions which aim to provide a broader field of datacenter wide access to pooled storage resources independent of the underlying storage hardware. Software-based storage usually implements the same level of functionality as conventional storage systems such as:
- Data Integrity and Redundancy features like data mirroring, erasure codes based methods, snapshots, bit rot detection, etc.
- Performance enhancing features such as data striping, distributing data across multiple servers
- Abstraction features: pooling multiple physical storage units into large virtual volumes
- Scale-out across multiple servers and sites
- Disaster recovery functions such as clustering Cluster (computing) or synchronous / asynchronous replication Replication (computing)
- Automation features such as self-healing, policy driven provisioning, etc.
- Simplified management for very large capacities and global namespaces
- Deployment flexibility features such as the ability to run in virtual machines or in the cloud
To keep costs low Software-based storage is usually built with commodity x86-based servers and use direct attached or server integrated storage devices such as disks or SSD.
Software-based storage solutions are sometimes also referred to as software-defined storage Software defined storage but as this term is mostly used by one vendor (VMware) the industry introduced a broader definition with Software-based storage. Sometimes Software-based storage solutions are also brought into context with scale-out storage but as some scale-out storage solutions are still proprietary storage hardware appliances which don't offer any choice on the actual underlying hardware, they cannot be classified as software-based storage.