I recently looked into the great resource post about dRAID from jro.
That made me realize, that I am not sure if I understand the actual use case of hot-spares.
First of all, if you have access to the system, maybe because it is in your home or in your office, there is no actual use case for this, right? I could just get an email alert and insert a new disk by hand.
But let’s say the server is in a colocation and they only do HDDs swaps once a week. Now one advantage I could see of hot-spare, would be that the resilver starts immediately.
But then I ask myself
-
For a single RAIDZ2 vdev, would it not be better to just move to RAIDZ3 instead of using the additional disk as hot-spare? Same storage, same amount of disks, but more parity?
-
And if you have multiple vdevs, the situation gets even worse, because now you waste multiple hot-spares. Would it not be better to just have the drive unassigned and after I get the warning email to manually replace (remote in webGUI) the affected disk with said cold-spare?
Now with dRAID it seems like a lot of things change.
Hot-spares are not empty sitting around like they use to, but they are “virtual hot-spares”. The empty space is shuffled around disks?
So instead of having multiple hot-spares for each vdev, you can have them now for the whole pool?
But even then, would it not be better in many situations, to use these drives as parity instead of hot-spares?
There is one use-case I was able to come up with, but I pretty sure it is flawed.
I wan’t dRAID over RAIDZ for the faster resilver.
My workload is mostly 16k, that is why I want 4d.
I would create a:
draid2:4d:48c:0s
Now instead of going to get 8 additional drives and go with
draid3:4d:56c:0s
I could only buy 2 drives and go with
draid2:4d:50c:2s
But then again, going for draid3 would be much better according to the calculator.
But if my case only allows for 50 drives, using draid2:4d:50c:2s instead of draid2:4d:48c:0s would be a little bit saver. This is the only use case I can come up with. What is it I don’t understand?