Storage Spaces Direct: Overview

Posted by Anton Kolomyeytsev on November 20, 2015
Share on Facebook0Share on Google+0Share on LinkedIn0Share on Reddit0Tweet about this on Twitter0
5/5 (1)

This is a short summary on Storage Spaces Direct – the first true software-defined storage from Microsoft, its history and peculiarities. Software-defined storage is a concept, which involves storing data without dedicated hardware. This is an introduction to a series of posts dedicated to theoretical and practical research of S2D. The post is not a full description of the Storage Spaces Direct technology, more info is available on Microsoft resources. Our focus here is the actual problem that S2D solved for virtualization world, being truly independent from underlying hardware, as SDS should. Its predecessor, Clustered Storage Spaces, had a very serious hardware lock-in with its requirements for SAS fabrics, SAS switches and SAS JBODS. Thus, Storage Spaces Direct is an interesting technology to research.

To be fair, Microsoft Clustered Storage Spaces was not a true Software-Defined Storage solution, because it relied completely on hardware: SAS JBOD, SAS HBA, SAS HDD, SAS flash, SAS fabric. While okay for relatively small deployments like SMB or ROBO, such an approach made it useless for Enterprise. Now Microsoft has solved the problem by introducing Storage Spaces Direct.


Virtualization market is so huge, that even global companies find it easy to dwell on just a part of it. Microsoft has always been targeting mainly SMB and ROBO space. However, their latest challenge aims Enterprise as well, namely datacenters, Internet Service Providers, Cloud Hosting, etc. So, what about the storage part of virtualization business?


Up to Windows Server 2016, Microsoft had no true Software-Defined Storage. Even when Clustered Storage Spaces came out with Windows Server 2012, it relied completely on SAS hardware: SAS JBOD, SAS fabric, SAS HBA, SAS HDD and SAS flash. While expensive, but still suitable for SMB and ROBO, such an approach is a no-go for Enterprise, being inconvenient to implement in datacenters because of poor scalability. Clustered Storage Spaces is basically DAS “on steroids”. SAS fabric is very distance-limited, making it impossible to connect server to JBOD if it is more than a few feet away, without SAS switches. The latter will also be necessary in case there are many servers to connect, JBOD will run out of ports. This means another vendor lock-in and even more hardware in the bill, while the issue stays when the distance is bigger or topology is complex. Geo clustering becomes unreasonably complex, forcing to build setups with SAS inside and use some other technology to configure replication outside. Besides, Scale-Out File Servers implied adopting “compute and storage separated” architecture, while datacenters are better off going hyperconverged, because the scenario gives more efficient server hardware utilization and higher flexibility.

A shared JBOD Scale-Out File Server

A shared JBOD Scale-Out File Server (Image Credit: Microsoft)


In Windows Server 2016, Microsoft has designed a technology called Storage Spaces Direct, which is a true SDS. It eliminates SAS hardware lock-in associated with Clustered Storage Spaces, accepting a much wider range of components, including inexpensive SATA and high-performance NVMe flash. With Storage Spaces Direct, all the data is wired between the nodes using Ethernet/SMB3/RDMA, without the need for any SAS fabric. This eliminates distance limitations and geo clustering configuration involves just one technology. Besides, standard Ethernet gear allows to build infrastructures with topology of any complexity. Also, the same engine can be applied for ROBO, SMB and Enterprise, the only difference being the scale of deployment. It is agile and adopts Converged and Hyperconverged scenarios, in other words keeping compute and storage resources on separate layers or unifying them on a single layer. Such flexibility allows Storage Spaces Direct to meet the demands of small deployments as well as large datacenters.

Converged deployment of Storage Spaces Direct for private clouds

Converged deployment of Storage Spaces Direct for private clouds (Image Credit: Microsoft)


Different Software-Defined Storages aimed at various company sizes are being replaced by a unified engine, unchained in terms of hardware. It allows a business to scale its virtualization infrastructure according to current needs, without having to rebuild it from scratch every time. Having dropped hardware lock-in and accepting commodity components, the new technology also cuts down hardware expense and associated management costs as well. Besides, it is much easier for IT specialists to master one technology than dig into multiple different ones.

Our engineers are going through several tests with S2D. Here is one of them:

Microsoft Storage Spaces Direct: 4-node setup

Related materials:

Views All Time
Views Today

Please rate this

Return to all posts

HOW TO: Change an Azure VM Subnet
Log-Structured File Systems: Overview
The following two tabs change content below.
Anton Kolomyeytsev
Anton Kolomyeytsev
CTO, Chief Architect & Co-Founder at StarWind
Anton Kolomyeytsev is StarWind CTO, Chief Architect & Co-Founder. Microsoft Most Valuable Professional [MVP] in Cluster 2014 & 2015. SMB3, NFS, iSCSI & iSER, NVMe over Fabrics.