The Big Picture: A Shared Water Tank

Imagine several water tanks in your garden. Instead of using each tank separately, you connect them with pipes into one big pool. Then you fill smaller bottles from the pool as you need them. If one tank leaks, some bottles can be kept safe by having water stored in two tanks at once.

Storage Spaces works the same way for disks. Windows takes several physical disks, joins them into a pool, and lets you carve out virtual disks (called spaces) from the pool. Each virtual disk can have protection against a disk failing. It is built into Windows 10 and 11, with no extra hardware needed.

Physical disks            Storage pool              Virtual disks (spaces)         Volumes
┌──────────┐
│ Disk A   │──┐
│ 1 TB     │  │
└──────────┘  │         ┌───────────────┐         ┌───────────────────┐
┌──────────┐  │         │               │ ──────► │ Space "Docs"      │ ──► D: (NTFS)
│ Disk B   │──┼───────► │   POOL        │         │ two-way mirror    │
│ 1 TB     │  │         │   about 3 TB  │         └───────────────────┘
└──────────┘  │         │   raw space   │         ┌───────────────────┐
┌──────────┐  │         │               │ ──────► │ Space "Videos"    │ ──► E: (NTFS)
│ Disk C   │──┘         └───────────────┘         │ simple (no copy)  │
│ 1 TB     │                                      └───────────────────┘
└──────────┘

5.1 Software-Defined Storage Pooling

What it is: "Software-defined" means the software, not a special hardware card, decides how data is spread over the disks. This is different from a hardware RAID card, which does the same job inside a separate chip. (RAID, "Redundant Array of Independent Disks", is the general idea of combining disks for speed or safety. Storage Spaces gives you RAID-like choices.)

Three building blocks:

BlockWhat it isWindows name
Storage poolA group of physical disks managed togetherGet-StoragePool
Storage space (virtual disk)A virtual disk carved from the pool. It appears in Disk Management as an ordinary diskGet-VirtualDisk
VolumeA file system on that virtual disk, with a drive letterGet-Volume

Steps to build one (reference only; the lab does not do this):

  1. Add two or more unused physical disks. They can be different sizes and types (an SSD and a hard drive, SATA and USB). (Disks added to a pool lose their old contents, so use empty ones.)
  2. Open Settings → System → Storage → Advanced storage settings → Storage Spaces (the menu path moves between Windows versions), or search "Storage Spaces" in Control Panel.
  3. Create a pool, then a space with a name, size and resiliency type (5.2).
  4. Windows initializes the virtual disk and offers to format it.

Two clever features:

  • Thin provisioning. You can create a space larger than the real space in the pool. For example, a 10 TB space on 3 TB of disks. Real space is only used as you write data. "Thin" means the space is promised, not yet taken. When the pool runs low, Windows warns you, and you add another disk. This is handy, but if you ignore the warnings the space can run out and go offline.
  • Easy growth. Add a disk to the pool, and the pool gets bigger. The virtual disk can use it.

Where does the pool live in the storage stack? A space is a virtual disk. The storage stack from Section 1 appears twice: once below the pool (for each real disk) and once above it (the file system sees one big disk). Windows' own Storage Spaces driver sits in between and does the spreading.

 File system sees:      "one disk" ────────────┐
                                               ▼
                                   ┌───────────────────────┐
                                   │ Storage Spaces driver │
                                   └─────┬─────┬─────┬─────┘
                                         ▼     ▼     ▼
 Normal stack per real disk:         Disk A  Disk B  Disk C

5.2 Resiliency Options (Mirror, Parity)

What it is: Resiliency means "how well your data survives when a disk dies." You choose it per space. The more protection, the more raw disk space you spend.

TypeHow it worksMinimum disksSurvivesUsable space (rough)
SimpleData is spread (striped) over disks. No copy1Nothing: one dead disk loses data100 %
Two-way mirrorEvery piece of data is written twice, on different disks2One disk failureAbout 50 %
Three-way mirrorWritten three times5 (as Microsoft documents it)Two disk failuresAbout 33 %
ParityData plus a calculated "check" value, like a sum, so a lost piece can be recomputed3One disk failureAbout 67 % or more (grows with more disks)

(Minimums and exact numbers depend on the Windows version and the edition. For example, newer versions and Windows Server can offer dual parity. Treat the table as a guide.)

TWO-WAY MIRROR              PARITY (single)                SIMPLE
Disk A: [1][2][3]           Disk A: [1][3][P]              Disk A: [1][4]
Disk B: [1][2][3]  copy     Disk B: [2][P][5]  P = check   Disk B: [2][5]
                            Disk C: [P][4][6]              Disk C: [3][6]
Lose A → B has all          Lose any one → rebuild         Lose any one → lost

Simple analogy for parity: If three numbers add up to a stored total, and you lose one number, you can subtract the other two from the total and get it back. Parity does something like that with bits, so you lose less space than a mirror.

Which one should I pick?

GoalGood choice
Fast scratch space, you have backupsSimple
Important files, small setupTwo-way mirror
Large archive, mostly read, not much writingParity (writing is slower because checks must be recalculated)

Warning: Storage Spaces protects against a disk dying. It does not protect against deleting a file by accident, ransomware or a fire. Mirrors are not backups. Keep a separate backup.

5.3 Looking at Storage Spaces (Read-Only)

In PowerShell (normal window is enough for most of these):

Get-StoragePool            # lists pools (the "Primordial" pool is always there)
Get-PhysicalDisk           # real disks, health, media type (SSD/HDD)
Get-VirtualDisk            # your spaces (empty if you have none)

If you have never made a pool, you will see only the Primordial pool. That is a built-in pool that simply lists every disk that is eligible to join a pool. It is not a real pool you created, and you cannot store anything in it.

Summary

TermPlain meaning
Storage SpacesWindows feature that pools disks and makes virtual disks
Storage poolA group of physical disks managed as one
Space / virtual diskA disk carved from the pool, with a chosen resiliency
Thin provisioningA space bigger than real space; real space is used only as written
SimpleStriped, no protection
Two-way / three-way mirrorData written 2 / 3 times
ParityData plus check values; saves space, slower writes
Primordial poolBuilt-in list of disks eligible to be pooled
Get-StoragePoolPowerShell command to list pools