ZFS with no RAID vdevs?

diggƒreak

Limp Gawd
Joined
Jan 8, 2006
Messages
173
I've yet to try ZFS, so I don't know if this makes sense. Consider the following sequence of actions:

1. An operating system supporting ZFS is installed on a boot volume
2. A new ZFS filesystem (pool?) is created
3. A 1TB disk is added to the pool as a vdev of type "disk" (not RAIDZ)
4. A 500GB disk is added to the pool as a vdev of type "disk"
5. A 320GB disk is added to the pool as a vdev of type "disk"
5. A 120GB disk is added in the same manner

What is the final amount of storage available in the pool? What kind of data protection exists in this pool? Is this an OK idea or a downright bad idea?
 
Sounds like you're talking about the zfs equivalent of raid0. Should be approx the sum of the disks. Absolutely terrible idea unless you don't care about the data.
 
Wouldn't checksums, copy-on-write, and snapshots provide me with some level of protection?
 
diggƒreak;1039237009 said:
Wouldn't checksums, copy-on-write, and snapshots provide me with some level of protection?

Not really. Cause what happens when it gets an error? Nowhere to recover from. Also single disk failure all data goes bye bye along with the snapshots.
 
Less safe than a single disk because you have multiple failure points. Terrible idea
 
It might make more sense if you create a new pool for each disk, and then use something like SnapRaid to provide the parity protection (I wouldn't use zfs for the parity disk though).

Then loss of a disk means loss of data only on that disk - which you should be able to recreate anyway from the Snapraid parity.
 
So why does loss of one vdev means loss of the whole pool, but there is no parity to recover it using ZFS?
 
ZFS stripes data across all the vdevs in a pool - lose one of those vdevs and the whole pool is toast if those vdevs happen to be single drives (similar to RAID0).
 
Unless you disable checksumming, yes they are compared on every read, regardless of raid level.
 
Unless you disable checksumming, yes they are compared on every read, regardless of raid level.

....but without at least mirror VDEVs there is nowhere to recover the correct data from.

There is a copies = 2 option I think though, which would keep 2 copies of every file in case one suffers corruption.


....All pointless without protection from disk failures tho!
 
I don't think I said (or implied) otherwise. I was answering a specific question about checksumming.
 
If you create a zpool of a single disk, you can specify "copies=2" which means data will be stored twice on the disk, halving disk storage. If one copy is corrupted, ZFS can restore the data from the second copy. If both copies are corrupted, then you are toast.

You can also specify "copies=3" which means data are stored thrice. All this is explained on the ZFS article on wikipedia.
 
Back
Top