Ross Walker writes: > Brad wrote: >> If a 8K file system block is written on a 9 disk raidz vdev, how is >> the data distributed (writtened) between all devices in the vdev >> since a zfs write is one continuously IO operation? >> >> Is it distributed evenly (1.125KB) per device? > > That's easy, 1k per device, 1k parity. > > I'm more interested in knowing how it handles a 4k recordsize split > across 8 devices!
almost as easy: 512 bytes per device. the kink is that you need two stripes to do this, one 7 x 512 bytes + parity, and one stripe which consists of the last 512 bytes mirrored (special case -- no use calculating parity here). it gets a little more interesting for 8.5 KiB: then the last stripe will consist of two sectors plus one sector of parity, and an additional sector will be reserved to avoid fragmentation issues. the rule is, if the allocation doesn't cover the full stripe, it will be rounded up to a multiple of N+1 where N is the number of parity disks. this way, the space will always be re-usable. -- Kjetil T. Homme Redpill Linpro AS - Changing the game _______________________________________________ storage-discuss mailing list storage-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/storage-discuss