Wong, James (Nagi Long) wrote:
Hi,
I’d like to know more about this topic. However, googling doesn’t
give me much. If you guys know of any info, please point me to it.
I understand zfs has high performance write, even with lots snapshots.
How about read performance? To me, it will be a very fragmented due
to the COW. And no matter how careful you allocate the blocks, you
can only put a SHARED block in the proximity of one particular
snapshot and to other snapshots, the shared block won’t be in
proximity – a fragmentation situation.
To begin, you should look at how blocks are allocated. Jeff Bonwick
wrote a good blog on this:
http://blogs.sun.com/bonwick/entry/zfs_block_allocation
Next, you'll need to understand that high performance and magnetic
hard disks are becoming mutually exclusive. High performance today
is owned by SSDs, which have no seek/rotate latency and tend to be
able to saturate the channel bandwidth. The "fragmentation" problem
with HDDs is very different than "fragmentation" in SDDs. To
understand how that is leveraged for the best price/performance mix,
you'll want to google for "hybrid storage pools" where there are many
good reference.
The next interesting area is where the allocation policy could go in
the future -- I'm not convinced that the HDD allocation policy in
place today is the best for SSDs. It certainly works for SSDs, but
there may be some improvements possible. So much research, so
little time...
<shameless plug>
I'll be getting into some of this sort of thing in some detail at the
USENIX Technical Conference 2009 ZFS Tutorial. You're
welcome to attend, and bring some friends :-)
http://www.usenix.org/events/usenix09/training/
</shameless plug>
-- richard
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss