ZfS & GEOM with many odd drive sizes
Mark Powell
M.S.Powell at salford.ac.uk
Thu Jul 26 07:47:17 UTC 2007
On Thu, 26 Jul 2007, Doug Rabson wrote:
> When its reading, RAID-Z only has to read the blocks which contain data
> - the parity block is only read if either the vdev is in degraded mode
> after a drive failure or one (two for RAID-Z2) of the data block reads
> fails.
Yes, but that article does not mention reading parity. What it's saying is
that every block is striped across multiple drives. The checksum for that
block thus applies to data which is on multiple drives. Therefore to
checksum a block you have to read all the parts of the block from every
drive except one in the RAIDz array:
"This makes read performance of a RAID-Z pool be the same as that of a
single disk, even if you only needed a small read from block D."
> For pools which contain a single RAID-Z or RAID-Z2 group, this is
> probably a performance issue. Larger pools containing multiple RAID-Z
> groups can spread the load to improve this.
This isn't something that's immediately obvious, coming from fixed stripe
size raid5. Now it seems that the variable stripe size has a rather
serious performance penalty.
It seems that if you have 8 drives, it'd be much more prudent to make
two RAIDz of 3+1 rather than one of 6+2.
Cheers.
--
Mark Powell - UNIX System Administrator - The University of Salford
Information Services Division, Clifford Whitworth Building,
Salford University, Manchester, M5 4WT, UK.
Tel: +44 161 295 4837 Fax: +44 161 295 5888 www.pgp.com for PGP key
More information about the freebsd-fs
mailing list