I've noticed that guides on zfs+redundancy+performance tend to emphasise mirroring as a good option, but zfs administration information tends to provide relatively little information on managing a mirrored setup compared to one based on raidz.
I'm planning my zfs pool migrating from mirrored disks under Windows. My preferred setup has always been purely mirrored and having looked into zfs I'd like to keep this, and use pure mirroring for redundancy rather than RAIDZ. Ideally each drive remains logically readable in isolation, ie for 6 disks data is effectively stored as
(1+2+3 mirror) + (4+5+6 mirror) rather than
((1+2 stripe) x 3 mirror). I appreciate this wouldn't be very efficient and would involve having multiple smaller pools/datasets but having lost data before, it has advantages I value over efficiency. It's also probably much faster at reading and resilvering, and far more flexible physically.
If I want to run this kind of setup, what are the implications of mirroring within a vdev vs mirroring vdevs, and if the storage is extended in future by adding a set of 3 new disks, is it better to add them as a separate pool or a separate vdev (or 3 separate vdevs)?