Anyone an expert in Synology here?
Synology’s Hybrid Raid (SHR) is a funky little system, especially since it’s built on standard Linux tools.
What I’m wondering though, is how data is distributed when you change the disks in the system.
Imagine I have 2x1TB drives and 2x4TB drives in a system.
- First it creates a 4x1TB “chunk” which is essentially RAID5. (3TB available)
- Next it creates a 2x3TB chunk which acts like RAID1 (although internally may be calculated like a RAID5 parity.) (3TB available from this)
Now let’s say I replace those two 1TB drives with 4TBs (safely, preserving data, etc.), and tell SHR to expand to use the new drives. I can see a number of scenarios from this point:
- It mirrors the two new blocks into another 3TB chunk, giving me 9TB total. (3 from RAID5, 3 from first mirror pair, 3 from second mirror pair)
- It expands the 3TB mirror into a second RAID5 group, giving 12TB total. (3 initial plus 9 in the second group)
- It does the same thing and also rewrites the data on the (former) 3TB mirror pair to be striped across all four disks
- It expands the 3TB mirror to RAID5, *and merges it with the original 3TB RAID group, giving a single 12TB RAID5.
- Again it does the same thing but with rewriting of the data that was formerly just mirrored.
This isn’t likely to be a huge deal, but I’d like to know how it works under the covers.
I’m not sure why SHR would require any file system, it’s an abstraction that sits below that layer.