Tip of the Day: NumberOfColumns

Today’s Tip…

In Storage Spaces, there is a concept called NumberOfColumns.  I have tried on a number of occasions to write about them in a quick, easy to understand format, but always I end up over doing it and confusing my audience.  So I’m going to make it work this time.

Storage Spaces is a functionality that was first introduced with  Widows Server 2012.  The idea was to pool together physical disks and allow the administrator to create different virtual disks (aka ‘Spaces’) of different layouts.  These layouts were liken to various types of RAID. 

The most basic layout available is the ‘simple’ layout.  Which is, in RAID terms, RAID0…aka a stripe set.  This means that instead of writing to the disks normally, filling up each disk, we ‘stripe’ the writes in rows.

So let’s say I have three disks...

clip_image001

Writing to them as a stripe set, the writes would be in stripe. 

clip_image002

This same pattern would be used when writing to the set….

clip_image003

The rows would be stripes and the columns would be…well…columns.  Since I used three disks when I created the set, the NumberOfColumns is three.

Why is this important?  Because when you want to add more space to the set, you have to follow that same pattern.  You cannot just stick a single disk into the works.  You cannot change the NumberOfColumns on the fly, nor can you continue a column if the other columns are not also continuing in a like fashion.  The ONLY way to add on additional space to this preexisting set is to add a number of disks equal to the NumberOfColumns.   

So in our case, you would have to add three disks to the set.

clip_image004

As you can see, each column is extended onto a new disk.  If I needed to extend the virtual disk again, I would have to add another three disks into the pool first.  Without understanding columns, this can be a bit confusing to people.

Now before any of you cry out about that fact that I didn’t mention NumberOfDataCopies, I’m doing that tomorrow.