× NETGEAR will be terminating ReadyCLOUD service by July 1st, 2023. For more details click here.
Orbi WiFi 7 RBE973
Reply

X-RAID horizontal expansion and storage size

ilan24
Aspirant

X-RAID horizontal expansion and storage size

Hi everyone,

 

I've been reading up on X-RAID horizontal expansion for my RN314.

 

I have been running a single 3TB HDD for a few years and recently bought another 3TB HDD to expand storage. I made a bit of a mistake in not realising X-RAID was enabled so the extra drive has done nothing but offer redundancy. Upon reading up on this and considering the age of the original HDD this probably isn't the worst thing, so will stick with the current set-up and purchase another 3TB HDD for expansion.

 

I'm curious to understand a bit more about how the redundancy works in that case though. When there are 2 equal sized drives it makes perfect sense how I could get full redundancy. But if I get another 3TB HDD drive, I'll then have 6TB of total storage and only 3TB for redundancy. Assuming I fill up the extra 3TB, how will I have redundancy for all 6TB of used storage? Is it compressed on the drive used for redundancy, or will I only have partial redundancy? And the same question applies if I then expand again in the 4th slot and have 9TB of total storage and how I would get redundancy for all of this if only 3TB is available for redundancy.

 

Thanks for your help!

Model: RN31400|ReadyNAS 300 Series 4- Bay (Diskless)
Message 1 of 7

Accepted Solutions
StephenB
Guru

Re: X-RAID horizontal expansion and storage size


@ilan24 wrote:

But how, if I add another 3TB after that, will I get that full 3TB as well? Wouldn't that mean that I would be sacrificing redundany somewhere?


You wouldn't be sacrificing redundancy.

 

With 4 disks, you just end up with 3 data blocks and a corresponding parity block.  Like the three disk case, the parity block is the sum (actually xor) of the data blocks.  You can still compute the missing bytes if any single disk fails - adding up the three data bytes if the parity byte is missing, or subtracting the remaining data bytes from the parity byte if a data byte is missing.

 

The expansion process includes re-organizing the pattern of data blocks and recomputing all the parity blocks on the disks.

 

There is one subtilty - redundancy allows you to reconstruct any missing disk, but if the data (or parity) is corrupted, RAID can't figure out which elements of the data is wrong.  So it can't repair actual errors.

View solution in original post

Message 6 of 7

All Replies
StephenB
Guru

Re: X-RAID horizontal expansion and storage size


@ilan24 wrote:

Assuming I fill up the extra 3TB, how will I have redundancy for all 6TB of used storage?


It's a math trick.  The data in the redundancy block isn't a copy.  

 

The basic idea is that you take a byte A on disk 1, and the corresonding byte B on disk 2.  You then create a parity byte R=A+B on disk 3.  Then if any disk fails, you can reconstruct the data from the other two.  For instance if disk 2 fails, then you'd recompute the missing byte by computing R-A.  Every time you write new data to the disk, the parity bytes are also updated.

 

This same approach is used with four disks.

 

In practice, the math doesn't use normal arithmetic - it uses a different operation called xor.  Also, the redundancy blocks are scattered across all three disks - they aren't all on one disk.

 

 

 

 

 

Message 2 of 7
ilan24
Aspirant

Re: X-RAID horizontal expansion and storage size

Thanks for the quick response Steven.

 

For the most part I get it, and am conscious that I probably don't need to understand the finer details of how it all works. But is the upshot of your explanation that if I have 3 x 3TB HDDs / 4 x 3TB HDDs, I'll have 6TB / 9TB of usable storage, and if one disk fails I'll simply be able to remove it and replace it without any data loss? And the final question would be whether I am losing any more usable storage space when I move from 3 HDDs to 4? In your example I can see how I get 6TB from 3 x 3TB HDDs, but I'm wondering whether I would lose a part of the additional 4th HDD when I added it as well for the redundancy?

Model: RN31400|ReadyNAS 300 Series 4- Bay (Diskless)
Message 3 of 7
Sandshark
Sensei

Re: X-RAID horizontal expansion and storage size

The basic rule is the total space is the sum of the drives minus the largest.  So if you add 2 more 3TBs to the NAS, you'll gain 6TB.  And if you add a 3TB and a 6TB, then you'll also only get an additional; 5TB untill the extra 4TB of the 6TB drive has a "mate" for it's redundancy.

 

There are exceptions if you expand with drives that are not at least as large as the largest one already installed.

Message 4 of 7
ilan24
Aspirant

Re: X-RAID horizontal expansion and storage size

Thanks Sandshark.

 

Apologies for this, but I'm still missing something. I understand how adding another 3TB to my existing 2 x 3TB HDDs will get me another 3TB in line with the logic Stephen shared. But how, if I add another 3TB after that, will I get that full 3TB as well? Wouldn't that mean that I would be sacrificing redundany somewhere?

Message 5 of 7
StephenB
Guru

Re: X-RAID horizontal expansion and storage size


@ilan24 wrote:

But how, if I add another 3TB after that, will I get that full 3TB as well? Wouldn't that mean that I would be sacrificing redundany somewhere?


You wouldn't be sacrificing redundancy.

 

With 4 disks, you just end up with 3 data blocks and a corresponding parity block.  Like the three disk case, the parity block is the sum (actually xor) of the data blocks.  You can still compute the missing bytes if any single disk fails - adding up the three data bytes if the parity byte is missing, or subtracting the remaining data bytes from the parity byte if a data byte is missing.

 

The expansion process includes re-organizing the pattern of data blocks and recomputing all the parity blocks on the disks.

 

There is one subtilty - redundancy allows you to reconstruct any missing disk, but if the data (or parity) is corrupted, RAID can't figure out which elements of the data is wrong.  So it can't repair actual errors.

Message 6 of 7
ilan24
Aspirant

Re: X-RAID horizontal expansion and storage size

Thanks so much Stephen and Sandshark - really appreciate the support and this helps a lot!
Message 7 of 7
Top Contributors
Discussion stats
  • 6 replies
  • 1238 views
  • 0 kudos
  • 3 in conversation
Announcements