Page 1 of 1

HDD with a parity surface

PostPosted: October 20th, 2013, 5:18 am
by LongRunner
I just thought of something that would virtually eliminate the risk of unrecoverable read errors - short of banging the drive while spinning, anyway - as the ECC is not always enough.

It's extraordinarily simple in principle - take one of the platter surfaces and store parity information on it. That way, if one of the user data sectors fails, the data stored in it could be reconstructed from the user sectors on other surfaces (the parity surface included).

It has just two minor drawbacks, as far as I can tell:
  • No ordinary consumer will pay for a good drive these days. (Enterprises would use redundant arrays anyway so it's little use to them.)
  • The write speed will be reduced (by up to half in a drive with only 1 data/2 total heads), but that's okay with me, especially in a multi-platter drive.
To me, though, it'd be well worth it in a high capacity drive, and it wouldn't raise the cost that much.

I'm pretty sure the formula to calculate (theoretical) error probability for a normal drive is:

1 - ((1 - [bit error rate])^(8000000000*[capacity in GB]))

Which with a 4TB drive and the usual unrecoverable error rate for consumer drives of 1 per 10^14 bits read, gives:

1 - ((1 - 1e-14)^(8000000000*4000)) = 0.27385096292631023698

And that's not acceptable if you trust your drive not to error out. (To keep the risk below 2%, you can have up to a 250GB drive.) In other words, current drives are dangerously large.

For a parity drive it would be this:

(1 - ((1 - [bit error rate])^(8000000000*[capacity in GB]))) * (1 - ((1 - [bit error rate])^(8*[sector size in bytes]*[number of heads - 1])))

Even with a 4EB drive with a total of 40 heads, and 4MiB sectors (in this calculation, larger sectors are worse), with the error rate downgraded to 1e-12 (the only half-realistic part), the risk is <0.2%. That's nothing short of unbelievable for such a simple modification.

(For some reason, Seagate gives the error rate for some of their desktop drives as "1 per 10E14", but I'm sure that's wrong because 10E14 is ten times 10^14.)

Okay, so it's not going to help with the total failures that keep happening over and over with current consumer drives, but that doesn't make it a bad idea. Of course, RAID 1 protects from this and more, but two drives = probably more unattractive for those cost-conscious consumers.

(By the way, here's an excellent software calculator. It's available for all the major operating systems, though I only use Windows.)

Re: HDD with a parity surface

PostPosted: October 21st, 2013, 6:01 pm
by c_hegge
LongRunner wrote:No ordinary consumer will pay for a good drive these days. (Enterprises would use redundant arrays anyway so it's little use to them.)

I don't disagree with the parity surface as a concept, but, from a manufacturer's point of view, that alone is reason enough not to design such a product. There just wouldn't be enough market for it, except for the select few of us who really want better quality and are willing to pay for it, but don't want to buy two HDDs for RAID 1.

Re: HDD with a parity surface

PostPosted: November 17th, 2013, 11:20 am
by shovenose
Buying two HDDs and putting them in RAID1 is still going to be more reliable. There are things in drives that fail not just bad sectors on the platter.