“Software Defined” is all the rage these days with vendors looking at ways to abstract core functionality and features away from the underlying hardware. Software defined storage is an especially hot topic. Microsoft has a couple of technologies out there called Storage Spaces and also Storage Spaces Direct that fit into this software defined bracket of technologies. There is confusion as to what each of these technologies are. Are they the same? What are the use cases for each? Let’s take a quick look at Differences between Storage Spaces and Storage Spaces Direct and the requirements, benefits, and use cases for each.
Differences between Storage Spaces and Storage Spaces Direct
In laymens terms Storage Spaces is used as a local RAID controller technology. Additionally, unlike other legacy features like dynamic disks, it can implement storage technologies like tiering. Automated tiering can come into play when you have different types of local disks such as spindles, SSDs, or NVMe drives. Storage Spaces can look at the capabilities of each type of disk and tier it accordingling to have “hot” disks for workloads that need more performance.
Storage Spaces can be utilized in conjunction with Windows Failover Clustering to provide high availability. One or more pools can be clustered across multiple nodes within a single cluster. Storage spaces are accessed by one node, and the storage will seamlessly fail over to a different node when necessary. In the case of Hyper-V designated as a Clustered Shared Volume, this allows simultaneous access to volumes.
Storage Spaces Direct Comparison
Storage Spaces Direct or S2D as it is designated as, was introduced with Windows Server 2016. It is Microsoft’s hyperconverged approach to software defined storage. In Storage Spaces Direct, each node is a “storage controller” that can utilize direct attached storage in various technologies including spindles, SSDs, or NVMe. Storage Spaces Direct can be configured in 2-16 node configurations similiar to vSAN.
Interestingly, in the Storage Spaces Direct configurations, you can do hyperconverged or disaggregated model configurations. In the disaggregated model, you have separate compute nodes from storage nodes.
Also, with Windows Datacenter licensing, Storage Spaces Direct is very compelling from a cost standpoint. If you have Datacenter, you can run unlimited Hyper-V VMs with Storage Spaces Direct.
Microsofts mention of a few of the key benefits:
- Simplicity – Microsoft touts under 15 minutes for Storage Spaces Direct deployment
- Performance – 150,000 mixed 4k random IOPS per server.
- Fault Tolerance – Buitin resiliency and continuous high availability.
- Resource Efficiency – Microsoft’s erasure coding delivers storage efficiency with ReFS.
- Manageability – Implementations can take advantage of Storage QoS Controls to help with overly busy virtual machines. Additionally, a health service monitors and alerts when thresholds are reached. It is exposed via an API interface to pull metrics as needed.
- Scalability – S2D can scale up to 16 nodes with 400 drives. Scaling out involves adding more drives or nodes to the cluster. New drives are automatically provisioned into the pool and performance is affected in a linear way as new nodes/drives are added.
S2D technology is built on top of Resilient File System or ReFS. Benefits of ReFS includes
- Significant performance improvements for .vhdx file operations such as creation, expansion, and checkpoint merging, and built-in checksums to detect and correct bit errors.
- Real-time tiers that rotate data between so-called “hot” and “cold” storage tiers in real-time based on usage.
- No deduplication.
Hopefully, these differences between Storage Spaces and Storage Spaces Direct will help with any confusion between the two technologies. Storage Spaces Direct or S2D has some pretty exciting features for software defined storage in the Microsoft Hyper-V world of virtualization. Keep a look out for some lab time with Storage Spaces Direct. Stay tuned!