Follow-up install questions

Steve O'Hara-Smith steve at sohara.org
Thu Oct 15 16:29:54 UTC 2015


On Thu, 15 Oct 2015 07:49:58 -0453.75
"William A. Mahaffey III" <wam at hiwaay.net> wrote:

> Pursuant to ongoing issues trying to install FreeBSD 9.3R on my Myth-TV 
> box, I have some questions about provisioning another box, also w/ 9.3R. 
> That box is AMD A-10 APU based, w/ 8X 1 TB 2.5" HDD's. Given the 
> problems I am having getting the (smaller, simpler box) going. I am 
> pondering using ZFS on the larger box.

	You have a fair number of options with 8 drives and they all
involve trade offs - for example the maximum storage would be striping
across all eight, maximum read performance would be an eight way mirror
although the stripes can be nearly as good for undisturbed streaming (once
there's any noticable interference with the streaming the stripe
performance degrades rapidly). RAIDZ1/2/3 provide more bytes for a
given protection level than mirroring at the cost of performance.

	But all of that is just rules of thumb - for performance start with
what you need in terms of random and streaming I/O and what sort of load
you want to impose. Then work out how to get it, at least that's my
approach. Sometimes it pays to separate pools based on usage, so that they
can be tuned separately and that the different kinds of workloads don't get
to interfere with each other.

> To that end, I have a couple of 
> questions. ZFS supports (man page) 'unmirrored pools'. Is that 
> tantamount to striped RAID ?

	Yes.

> If so, what sort of I/O performance can I 
> look for there ?

	There are really good documents on the performance of the various
options for ZFS, but for real world use so much depends on the actual
workload that it's really best to use the documents to short list some
options and then benchark them with real loads if possible.

> up across the LAN onto other boxen, so I am worrying less about HDD 
> reliability & more about performance & max available GiB's/TiB's.

	Right there is a tradeoff - maximising data means only one copy
and so that means that the small random I/O performance can fall to that of
a single drive, OTOH the performance for undisturbed large reads striped
across all drives is effectively multiplied by the number of drives (with
decent management) - for eight 4k drives (and matching stripe blocks) this
means 32Kbyte reads are needed. Mirrors effectively multiply all read
performance by the number of drives in the mirror.

	So you see it depends what sort of performance you need - maybe
you'd be best with a mix - some in a mirror for the random I/O and the rest
striped for streaming performance - or maybe just swap one drive for an SSD
for the random I/O and stripe the rest.

	None of this is epecific to ZFS (or FreeBSD).

-- 
Steve O'Hara-Smith <steve at sohara.org>


More information about the freebsd-questions mailing list