I think I see where there may be a bit of a disconnect. To add to what @Hutch-45Drives mentioned regarding VDEVs in ZFS, this is going to be a bit of a change for you coming from unRAID. The most common file system used in unRAID is BTRFS, which plays a large role in unRAID’s appeal to many Self-Hosters!
BTRFS is a file system that allows you to create a parity drive (using your largest drive available to the system) to sort of “checksum” or tally up the entire contents of the drives below. To the best of my ability to explain that, and probably grossly oversimplifying the features of BTRFS for sake of easier explanations.
We know that data is stored as 0 or 1, in bits. We also know that you have 3 capacity drives in your array (as seen in the “Main” tab) and your 8TB parity drive.
So, those drives may look something like this:
Drive 1 |
Drive 2 |
Drive 3 |
Parity |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
|
|
1 |
1 |
|
|
0 |
0 |
|
|
1 |
1 |
|
|
|
- |
|
|
|
- |
|
|
|
- |
In this diagram, Drive 1 and 2 are your 4TB’s and Drive 3 is your 6TB, which is why the string is longer! I kept the binary math simple here to just convey the point. This is all just to show that the Parity Drive is just all of your array drives “added up” and the total is written to parity. This is why when you lose any one of your drives, you can rebuild from parity.
Drive 2 dies? No problem! We know what Drive 1 and 3 contain, as they are online and healthy. So we subtract their values from the Parity drive and know what Drive 2 MUST have contained. We then simply write that answer to the new drive you replace it with! The largest benefit here is we can keep expanding and adding more drives to the math problem with ease over time. This makes BTRFS really nice for a use case such as a self-hosted media server, ease of expansion.
Now, ZFS on the other hand, does not function the same way by using a parity drive. Instead, it handles your data integrity through a myriad of different options, such as RAIDZ1/2 or a simple Mirror. The problem with this is that unlike BTRFS, it’s required that the drives match in size and that you cannot as easily add capacity to a Mirror or RAIDZ array like you can with BTRFS.
So, it may be in your use case, that BTRFS is the file system best suited to your needs! And that’s fine! There are tradeoffs with any solution.
A gentleman much smarter than I could ever hope to be has a video here: https://youtu.be/lsFDp-W1Ks0?si=KMrIFNRotUm7SwDu (If I’m not mistaken, Wendell was part of the committee helping with the 45Homelabs project)