Data integrity without parity disk

Status
Not open for further replies.

ajp_anton

Dabbler
Joined
Mar 6, 2017
Messages
11
Hi

I'm trying to set up storage for all my data, and trying to get away not spending too much money on hard drives. This will be a joint effort between me and my friend, so we will both be having backups of each other's data. Basically, there's going to be a complete mirror of everything in a different location (in fact, in another country).

Now, do we need all this parity and RAID stuff? It feels like a real mess when more storage is needed and I just want to add a single new disk of different size than the rest. If a disk fails, yes, some data is lost locally, but it can be recovered from the backup.

What about "silent errors" aka "bit rot"? First I thought ZFS would just use parity data stored as part of the file system, but I might've been wrong. Does it need a separate parity disk to repair errors? If not, does it at least tell me where the error is, so I can replace the file from the backup? Can this be made automatic (treat the offsite backup as a mirror)?

I was thinking of having BT Sync or Syncthing to keep the backups up to date. Can this help (or mess up) in repairing silent errors?
 

tres_kun

Dabbler
Joined
Oct 10, 2015
Messages
40
The risk you are running in this instance that both machines can fail a scrub at the same time
Or that after a machine goes down
While transferring data the other machine develops a failed drive
NTFS for windows has a very limited amount of parrity from my understanding that helps a lot in case of data corruption
ZFS has nothing and a single MB of data on a disk can be associated with a multitude of files
Having redundancy on at least a single machine is a must
 

Stux

MVP
Joined
Jun 2, 2016
Messages
4,419
It will identify corrupt files for you. And you can tell it to keep multiple copies of data on a single disk.

But with a backup in another country what you really want is at least some disk based redundancy.

The easy solution is mirrors. Just add a pair of drives at a time. If you don't want to add more drives, then replace the two smallest drives with bigger drives (one at a time).

You then replicate to your buddy and he replicates to you. And you treat the backup as disaster recovery, not your primary redundancy.
 

ajp_anton

Dabbler
Joined
Mar 6, 2017
Messages
11
The risk you are running in this instance that both machines can fail a scrub at the same time
Or that after a machine goes down
While transferring data the other machine develops a failed drive
NTFS for windows has a very limited amount of parrity from my understanding that helps a lot in case of data corruption
ZFS has nothing
But what's the risk that both machines fail a scrub, not only at the same time, but also in the same block of data?

I thought NTFS had nothing, ReFS had some, but ZFS had the most. Which is why I decided to ditch ReFS on Windows and go for ZFS on FreeNAS.
a single MB of data on a disk can be associated with a multitude of files
Is this because of deduplication? I wasn't going to use it because of its RAM requirements and because I don't think it would help much anyway.


But with a backup in another country what you really want is at least some disk based redundancy.
[...]
And you treat the backup as disaster recovery, not your primary redundancy.
The "another country" was just a side note to emphasize that a disaster is unlikely to affect both locations. Was your comment based on the assumption that it would take a long time to send data? Does it help that the slower of us is limited to 100/50 Mb/s? (the other has 1/1 Gb/s)
 

tres_kun

Dabbler
Joined
Oct 10, 2015
Messages
40
You are misunderstanding what ZFS is
ZFS has parity only if you set it up
using 3 disk in raid Z1 will allow the total failure of 1 disk
As you use the storage it will get fragmented and that 1MB might have data for more then 1 file because of fragmentation
If you striped volumes you are better off not using freenas
Stripe: requires a minimum of 1 disk. Provides no redundancy, meaning if any of the disks in the stripe fails, all data in the stripe is lost.
 

ajp_anton

Dabbler
Joined
Mar 6, 2017
Messages
11
Ah, I thought there was some tiny bit of parity (ECC) for every block of data, kind of what HDDs already have internally but as an additional layer of security on the file system level.
Well that's disappointing... Maybe I'll have to go with a larger number of smaller disks so that a smaller amount is "wasted" on a having a parity disk.
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
Does it need a separate parity disk to repair errors?
There are no "parity disks", that's an unraidism that we profoundly dislike. The whole industry moved away from such things a long time ago, hence why you don't see RAID3 anymore.

Now, to answer to question you should have asked, can FreeNAS repair errors in vdevs that do not have redundancy?
No. Errors will be detected, but without redundancy (either as a mirror or as part of a RAIDZ vdev) they cannot be corrected. You can set ZFS to create several copies of each file, but this is mostly a solution looking for a problem.
 

rs225

Guru
Joined
Jun 28, 2014
Messages
878
ZFS does keep two copies of metadata, so a non-redundant pool is risking only individual data blocks from a bad sector. The bigger risk is a drive failure: that still takes out the entire pool. When you don't have parity, you are better off having single drive pools, so the risk of single disk failure isn't amplified across a larger set of drives. Otherwise, use raidz1 and the features for scheduled scrub, SMART tests, and notification.

What you describe as a tiny bit of parity for each block on ZFS, is probably the checksum. It is there to detect corruption, but it can't fix it. You can then retrieve correct data from your backup and overwrite the corrupt block, but that would be done either manually or with additional software (like rsync). However, this should be very rare, and not automatic since it carries the risk of automatically ruining all your data.
 
Status
Not open for further replies.
Top